You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2020/02/10 12:44:21 UTC

[camel-spring-boot] 02/02: Generate docs for auto configuration options.

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git

commit 13ae51f3d428593f370cf6ead710cf1d854fa618
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Feb 10 13:39:57 2020 +0100

    Generate docs for auto configuration options.
---
 .../src/main/docs/activemq-starter.adoc            | 113 ++++++++++
 .../src/main/docs/ahc-starter.adoc                 |  34 +++
 .../src/main/docs/ahc-ws-starter.adoc              |  35 +++
 .../src/main/docs/amqp-starter.adoc                | 110 +++++++++
 .../src/main/docs/any23-starter.adoc               |  29 +++
 .../src/main/docs/apns-starter.adoc                |  29 +++
 .../src/main/docs/as2-starter.adoc                 |  56 +++++
 .../src/main/docs/asn1-starter.adoc                |  28 +++
 .../src/main/docs/asterisk-starter.adoc            |  28 +++
 .../src/main/docs/atmos-starter.adoc               |  32 +++
 .../main/docs/atmosphere-websocket-starter.adoc    |  36 +++
 .../src/main/docs/atom-starter.adoc                |  27 +++
 .../src/main/docs/atomix-starter.adoc              |  97 ++++++++
 .../src/main/docs/avro-starter.adoc                |  41 ++++
 .../src/main/docs/aws-cw-starter.adoc              |  42 ++++
 .../src/main/docs/aws-ddb-starter.adoc             |  61 +++++
 .../src/main/docs/aws-ec2-starter.adoc             |  38 ++++
 .../src/main/docs/aws-ecs-starter.adoc             |  38 ++++
 .../src/main/docs/aws-eks-starter.adoc             |  38 ++++
 .../src/main/docs/aws-iam-starter.adoc             |  38 ++++
 .../src/main/docs/aws-kinesis-starter.adoc         |  58 +++++
 .../src/main/docs/aws-kms-starter.adoc             |  38 ++++
 .../src/main/docs/aws-lambda-starter.adoc          |  38 ++++
 .../src/main/docs/aws-mq-starter.adoc              |  38 ++++
 .../src/main/docs/aws-msk-starter.adoc             |  38 ++++
 .../src/main/docs/aws-s3-starter.adoc              |  65 ++++++
 .../src/main/docs/aws-sdb-starter.adoc             |  27 +++
 .../src/main/docs/aws-ses-starter.adoc             |  42 ++++
 .../src/main/docs/aws-sns-starter.adoc             |  48 ++++
 .../src/main/docs/aws-sqs-starter.adoc             |  66 ++++++
 .../src/main/docs/aws-swf-starter.adoc             |  58 +++++
 .../src/main/docs/aws-translate-starter.adoc       |  41 ++++
 .../src/main/docs/aws2-cw-starter.adoc             |  42 ++++
 .../src/main/docs/aws2-ec2-starter.adoc            |  38 ++++
 .../src/main/docs/aws2-ecs-starter.adoc            |  38 ++++
 .../src/main/docs/aws2-eks-starter.adoc            |  38 ++++
 .../src/main/docs/aws2-iam-starter.adoc            |  38 ++++
 .../src/main/docs/aws2-kms-starter.adoc            |  38 ++++
 .../src/main/docs/aws2-mq-starter.adoc             |  38 ++++
 .../src/main/docs/aws2-msk-starter.adoc            |  38 ++++
 .../src/main/docs/aws2-translate-starter.adoc      |  41 ++++
 .../src/main/docs/azure-starter.adoc               |  58 +++++
 .../src/main/docs/barcode-starter.adoc             |  30 +++
 .../src/main/docs/base64-starter.adoc              |  29 +++
 .../src/main/docs/bean-starter.adoc                |  36 +++
 .../src/main/docs/bean-validator-starter.adoc      |  32 +++
 .../src/main/docs/beanio-starter.adoc              |  34 +++
 .../src/main/docs/beanstalk-starter.adoc           |  29 +++
 .../src/main/docs/bindy-starter.adoc               |  45 ++++
 .../src/main/docs/bonita-starter.adoc              |  27 +++
 .../src/main/docs/box-starter.adoc                 |  45 ++++
 .../src/main/docs/braintree-starter.adoc           |  42 ++++
 .../src/main/docs/browse-starter.adoc              |  28 +++
 .../src/main/docs/caffeine-starter.adoc            |  60 +++++
 .../src/main/docs/cassandraql-starter.adoc         |  28 +++
 .../src/main/docs/cbor-starter.adoc                |  36 +++
 .../src/main/docs/chatscript-starter.adoc          |  27 +++
 .../src/main/docs/chunk-starter.adoc               |  27 +++
 .../src/main/docs/cm-sms-starter.adoc              |  27 +++
 .../src/main/docs/cmis-starter.adoc                |  29 +++
 .../src/main/docs/coap-starter.adoc                |  28 +++
 .../src/main/docs/cometd-starter.adoc              |  35 +++
 .../src/main/docs/consul-starter.adoc              | 116 ++++++++++
 .../src/main/docs/controlbus-starter.adoc          |  27 +++
 .../src/main/docs/corda-starter.adoc               |  41 ++++
 .../src/main/docs/core-starter.adoc                | 169 ++++++++++++++
 .../src/main/docs/couchbase-starter.adoc           |  28 +++
 .../src/main/docs/couchdb-starter.adoc             |  28 +++
 .../src/main/docs/cron-starter.adoc                |  28 +++
 .../src/main/docs/crypto-cms-starter.adoc          |  29 +++
 .../src/main/docs/crypto-starter.adoc              |  74 ++++++
 .../src/main/docs/csv-starter.adoc                 |  54 +++++
 .../src/main/docs/cxf-starter.adoc                 |  37 +++
 .../src/main/docs/dataformat-starter.adoc          |  27 +++
 .../src/main/docs/dataset-starter.adoc             |  31 +++
 .../src/main/docs/debezium-mongodb-starter.adoc    |  55 +++++
 .../src/main/docs/debezium-mysql-starter.adoc      |  85 +++++++
 .../src/main/docs/debezium-postgres-starter.adoc   |  77 +++++++
 .../src/main/docs/debezium-sqlserver-starter.adoc  |  59 +++++
 .../src/main/docs/digitalocean-starter.adoc        |  27 +++
 .../src/main/docs/direct-starter.adoc              |  30 +++
 .../src/main/docs/directvm-starter.adoc            |  32 +++
 .../src/main/docs/disruptor-starter.adoc           |  46 ++++
 .../src/main/docs/dns-starter.adoc                 |  27 +++
 .../src/main/docs/docker-starter.adoc              |  46 ++++
 .../src/main/docs/dozer-starter.adoc               |  27 +++
 .../src/main/docs/drill-starter.adoc               |  27 +++
 .../src/main/docs/dropbox-starter.adoc             |  28 +++
 .../src/main/docs/ehcache-starter.adoc             |  51 +++++
 .../src/main/docs/elasticsearch-rest-starter.adoc  |  38 ++++
 .../src/main/docs/elsql-starter.adoc               |  32 +++
 .../src/main/docs/elytron-starter.adoc             |  36 +++
 .../src/main/docs/etcd-starter.adoc                |  43 ++++
 .../src/main/docs/exec-starter.adoc                |  27 +++
 .../src/main/docs/facebook-starter.adoc            |  55 +++++
 .../src/main/docs/fastjson-starter.adoc            |  44 ++++
 .../src/main/docs/fhir-starter.adoc                |  81 +++++++
 .../src/main/docs/file-starter.adoc                |  28 +++
 .../src/main/docs/file-watch-starter.adoc          |  32 +++
 .../src/main/docs/flatpack-starter.adoc            |  38 ++++
 .../src/main/docs/flink-starter.adoc               |  31 +++
 .../src/main/docs/fop-starter.adoc                 |  27 +++
 .../src/main/docs/freemarker-starter.adoc          |  28 +++
 .../src/main/docs/ftp-starter.adoc                 |  37 +++
 .../src/main/docs/ganglia-starter.adoc             |  41 ++++
 .../src/main/docs/geocoder-starter.adoc            |  27 +++
 .../src/main/docs/git-starter.adoc                 |  28 +++
 .../src/main/docs/github-starter.adoc              |  28 +++
 .../src/main/docs/google-bigquery-starter.adoc     |  41 ++++
 .../src/main/docs/google-calendar-starter.adoc     |  56 +++++
 .../src/main/docs/google-drive-starter.adoc        |  37 +++
 .../src/main/docs/google-mail-starter.adoc         |  50 +++++
 .../src/main/docs/google-pubsub-starter.adoc       |  32 +++
 .../src/main/docs/google-sheets-starter.adoc       |  54 +++++
 .../src/main/docs/gora-starter.adoc                |  28 +++
 .../src/main/docs/graphql-starter.adoc             |  27 +++
 .../src/main/docs/grok-starter.adoc                |  30 +++
 .../src/main/docs/groovy-starter.adoc              |  26 +++
 .../src/main/docs/grpc-starter.adoc                |  28 +++
 .../src/main/docs/gson-starter.adoc                |  44 ++++
 .../src/main/docs/guava-eventbus-starter.adoc      |  30 +++
 .../src/main/docs/hazelcast-starter.adoc           | 109 +++++++++
 .../src/main/docs/hbase-starter.adoc               |  30 +++
 .../src/main/docs/hdfs-starter.adoc                |  30 +++
 .../src/main/docs/hipchat-starter.adoc             |  28 +++
 .../src/main/docs/hl7-starter.adoc                 |  29 +++
 .../src/main/docs/http-starter.adoc                |  44 ++++
 .../src/main/docs/hystrix-starter.adoc             |  27 +++
 .../src/main/docs/ical-starter.adoc                |  27 +++
 .../src/main/docs/iec60870-starter.adoc            |  42 ++++
 .../src/main/docs/ignite-starter.adoc              |  68 ++++++
 .../src/main/docs/infinispan-starter.adoc          |  48 ++++
 .../src/main/docs/influxdb-starter.adoc            |  27 +++
 .../src/main/docs/iota-starter.adoc                |  27 +++
 .../src/main/docs/ipfs-starter.adoc                |  29 +++
 .../src/main/docs/irc-starter.adoc                 |  29 +++
 .../src/main/docs/ironmq-starter.adoc              |  28 +++
 .../src/main/docs/jackson-starter.adoc             |  44 ++++
 .../src/main/docs/jacksonxml-starter.adoc          |  40 ++++
 .../src/main/docs/jaxb-starter.adoc                |  43 ++++
 .../src/main/docs/jaxp-starter.adoc                |  27 +++
 .../src/main/docs/jbpm-starter.adoc                |  28 +++
 .../src/main/docs/jcache-starter.adoc              |  33 +++
 .../src/main/docs/jclouds-starter.adoc             |  30 +++
 .../src/main/docs/jcr-starter.adoc                 |  28 +++
 .../src/main/docs/jdbc-starter.adoc                |  28 +++
 .../src/main/docs/jetty-starter.adoc               |  57 +++++
 .../src/main/docs/jgroups-raft-starter.adoc        |  37 +++
 .../src/main/docs/jgroups-starter.adoc             |  35 +++
 .../src/main/docs/jing-starter.adoc                |  27 +++
 .../src/main/docs/jira-starter.adoc                |  36 +++
 .../src/main/docs/jms-starter.adoc                 | 109 +++++++++
 .../src/main/docs/jmx-starter.adoc                 |  27 +++
 .../src/main/docs/johnzon-starter.adoc             |  44 ++++
 .../src/main/docs/jolt-starter.adoc                |  28 +++
 .../src/main/docs/jooq-starter.adoc                |  33 +++
 .../src/main/docs/jpa-starter.adoc                 |  32 +++
 .../src/main/docs/jsch-starter.adoc                |  28 +++
 .../src/main/docs/jslt-starter.adoc                |  28 +++
 .../src/main/docs/json-validator-starter.adoc      |  27 +++
 .../src/main/docs/jsonapi-starter.adoc             |  28 +++
 .../src/main/docs/jsonpath-starter.adoc            |  31 +++
 .../src/main/docs/jt400-starter.adoc               |  29 +++
 .../src/main/docs/kafka-starter.adoc               | 125 +++++++++++
 .../src/main/docs/kubernetes-starter.adoc          |  94 ++++++++
 .../src/main/docs/kudu-starter.adoc                |  27 +++
 .../src/main/docs/language-starter.adoc            |  27 +++
 .../src/main/docs/ldap-starter.adoc                |  27 +++
 .../src/main/docs/ldif-starter.adoc                |  27 +++
 .../src/main/docs/log-starter.adoc                 |  28 +++
 .../src/main/docs/lra-starter.adoc                 |  29 +++
 .../src/main/docs/lucene-starter.adoc              |  36 +++
 .../src/main/docs/lumberjack-starter.adoc          |  29 +++
 .../src/main/docs/lzf-starter.adoc                 |  27 +++
 .../src/main/docs/mail-starter.adoc                |  74 ++++++
 .../src/main/docs/master-starter.adoc              |  29 +++
 .../src/main/docs/metrics-starter.adoc             |  28 +++
 .../src/main/docs/micrometer-starter.adoc          |  28 +++
 .../src/main/docs/milo-starter.adoc                |  72 ++++++
 .../src/main/docs/mina-starter.adoc                |  55 +++++
 .../src/main/docs/mllp-starter.adoc                |  57 +++++
 .../src/main/docs/mock-starter.adoc                |  27 +++
 .../src/main/docs/mongodb-gridfs-starter.adoc      |  28 +++
 .../src/main/docs/mongodb-starter.adoc             |  29 +++
 .../src/main/docs/msv-starter.adoc                 |  29 +++
 .../src/main/docs/mustache-starter.adoc            |  28 +++
 .../src/main/docs/mvel-starter.adoc                |  29 +++
 .../src/main/docs/mybatis-starter.adoc             |  35 +++
 .../src/main/docs/nagios-starter.adoc              |  34 +++
 .../src/main/docs/nats-starter.adoc                |  30 +++
 .../src/main/docs/netty-http-starter.adoc          |  60 +++++
 .../src/main/docs/netty-starter.adoc               | 104 +++++++++
 .../src/main/docs/nitrite-starter.adoc             |  28 +++
 .../src/main/docs/nsq-starter.adoc                 |  30 +++
 .../src/main/docs/ognl-starter.adoc                |  26 +++
 .../src/main/docs/olingo2-starter.adoc             |  42 ++++
 .../src/main/docs/olingo4-starter.adoc             |  42 ++++
 .../src/main/docs/openstack-starter.adoc           |  42 ++++
 .../src/main/docs/opentracing-starter.adoc         |  26 +++
 .../src/main/docs/optaplanner-starter.adoc         |  28 +++
 .../src/main/docs/paho-starter.adoc                |  56 +++++
 .../src/main/docs/pdf-starter.adoc                 |  27 +++
 .../src/main/docs/pg-replication-slot-starter.adoc |  27 +++
 .../src/main/docs/pgevent-starter.adoc             |  28 +++
 .../src/main/docs/platform-http-starter.adoc       |  27 +++
 .../src/main/docs/printer-starter.adoc             |  27 +++
 .../src/main/docs/protobuf-starter.adoc            |  28 +++
 .../src/main/docs/pubnub-starter.adoc              |  28 +++
 .../src/main/docs/pulsar-starter.adoc              |  32 +++
 .../src/main/docs/quartz-starter.adoc              |  38 ++++
 .../src/main/docs/quickfix-starter.adoc            |  33 +++
 .../src/main/docs/rabbitmq-starter.adoc            |  77 +++++++
 .../src/main/docs/reactive-streams-starter.adoc    |  33 +++
 .../src/main/docs/ref-starter.adoc                 |  28 +++
 .../src/main/docs/rest-openapi-starter.adoc        |  35 +++
 .../src/main/docs/rest-starter.adoc                |  36 +++
 .../src/main/docs/rest-swagger-starter.adoc        |  35 +++
 .../src/main/docs/robotframework-starter.adoc      |  73 ++++++
 .../src/main/docs/rss-starter.adoc                 |  29 +++
 .../src/main/docs/saga-starter.adoc                |  27 +++
 .../src/main/docs/salesforce-starter.adoc          | 113 ++++++++++
 .../src/main/docs/sap-netweaver-starter.adoc       |  27 +++
 .../src/main/docs/saxon-starter.adoc               |  34 +++
 .../src/main/docs/scheduler-starter.adoc           |  28 +++
 .../src/main/docs/schematron-starter.adoc          |  27 +++
 .../src/main/docs/seda-starter.adoc                |  34 +++
 .../src/main/docs/service-starter.adoc             |  29 +++
 .../src/main/docs/servicenow-starter.adoc          |  82 +++++++
 .../src/main/docs/servlet-starter.adoc             |  38 ++++
 .../src/main/docs/sip-starter.adoc                 |  28 +++
 .../src/main/docs/sjms-starter.adoc                |  49 ++++
 .../src/main/docs/sjms2-starter.adoc               |  42 ++++
 .../src/main/docs/slack-starter.adoc               |  29 +++
 .../src/main/docs/smpp-starter.adoc                |  64 ++++++
 .../src/main/docs/snakeyaml-starter.adoc           |  34 +++
 .../src/main/docs/snmp-starter.adoc                |  28 +++
 .../src/main/docs/soap-starter.adoc                |  32 +++
 .../src/main/docs/solr-starter.adoc                |  27 +++
 .../src/main/docs/soroush-starter.adoc             |  29 +++
 .../src/main/docs/spark-starter.adoc               |  29 +++
 .../src/main/docs/splunk-starter.adoc              |  29 +++
 .../src/main/docs/spring-batch-starter.adoc        |  29 +++
 .../src/main/docs/spring-integration-starter.adoc  |  28 +++
 .../src/main/docs/spring-ldap-starter.adoc         |  27 +++
 .../src/main/docs/spring-redis-starter.adoc        |  28 +++
 .../src/main/docs/spring-starter.adoc              |  30 +++
 .../src/main/docs/spring-ws-starter.adoc           |  29 +++
 .../src/main/docs/sql-starter.adoc                 |  34 +++
 .../src/main/docs/ssh-starter.adoc                 |  56 +++++
 .../src/main/docs/stax-starter.adoc                |  27 +++
 .../src/main/docs/stomp-starter.adoc               |  41 ++++
 .../src/main/docs/stream-starter.adoc              |  28 +++
 .../src/main/docs/stringtemplate-starter.adoc      |  27 +++
 .../src/main/docs/stub-starter.adoc                |  34 +++
 .../src/main/docs/syslog-starter.adoc              |  26 +++
 .../src/main/docs/tagsoup-starter.adoc             |  28 +++
 .../src/main/docs/tarfile-starter.adoc             |  29 +++
 .../src/main/docs/telegram-starter.adoc            |  32 +++
 .../src/main/docs/thrift-starter.adoc              |  33 +++
 .../src/main/docs/tika-starter.adoc                |  27 +++
 .../src/main/docs/timer-starter.adoc               |  27 +++
 .../src/main/docs/twilio-starter.adoc              |  34 +++
 .../src/main/docs/twitter-starter.adoc             |  60 +++++
 .../src/main/docs/undertow-starter.adoc            |  37 +++
 .../src/main/docs/univocity-parsers-starter.adoc   |  77 +++++++
 .../src/main/docs/validator-starter.adoc           |  28 +++
 .../src/main/docs/velocity-starter.adoc            |  28 +++
 .../src/main/docs/vertx-starter.adoc               |  34 +++
 .../camel-vm-starter/src/main/docs/vm-starter.adoc |  34 +++
 .../src/main/docs/weather-starter.adoc             |  30 +++
 .../src/main/docs/web3j-starter.adoc               |  62 +++++
 .../src/main/docs/webhook-starter.adoc             |  34 +++
 .../src/main/docs/websocket-jsr356-starter.adoc    |  29 +++
 .../src/main/docs/websocket-starter.adoc           |  41 ++++
 .../src/main/docs/weka-starter.adoc                |  27 +++
 .../src/main/docs/wordpress-starter.adoc           |  36 +++
 .../src/main/docs/workday-starter.adoc             |  27 +++
 .../src/main/docs/xchange-starter.adoc             |  27 +++
 .../camel-xj-starter/src/main/docs/xj-starter.adoc |  35 +++
 .../src/main/docs/xmlsecurity-starter.adoc         |  83 +++++++
 .../src/main/docs/xmpp-starter.adoc                |  28 +++
 .../src/main/docs/xpath-starter.adoc               |  32 +++
 .../src/main/docs/xslt-saxon-starter.adoc          |  35 +++
 .../src/main/docs/xslt-starter.adoc                |  32 +++
 .../src/main/docs/xstream-starter.adoc             |  55 +++++
 .../src/main/docs/yammer-starter.adoc              |  44 ++++
 .../src/main/docs/zendesk-starter.adoc             |  35 +++
 .../src/main/docs/zip-deflater-starter.adoc        |  29 +++
 .../src/main/docs/zipfile-starter.adoc             |  29 +++
 .../src/main/docs/zipkin-starter.adoc              |  34 +++
 .../src/main/docs/zookeeper-master-starter.adoc    |  33 +++
 .../src/main/docs/zookeeper-starter.adoc           |  82 +++++++
 tooling/camel-spring-boot-dependencies/pom.xml     | 250 ---------------------
 .../spring-boot-auto-configure-options.mvel        |   2 +-
 294 files changed, 11561 insertions(+), 251 deletions(-)

diff --git a/components-starter/camel-activemq-starter/src/main/docs/activemq-starter.adoc b/components-starter/camel-activemq-starter/src/main/docs/activemq-starter.adoc
new file mode 100644
index 0000000..f1e805a
--- /dev/null
+++ b/components-starter/camel-activemq-starter/src/main/docs/activemq-starter.adoc
@@ -0,0 +1,113 @@
+== activemq - Spring Boot Auto-Configuration
+
+When using activemq with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-activemq-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 89 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.activemq.accept-messages-while-stopping* | Specifies whether the consumer accept messages while it is stopping. You may consider enabling this option, if you start and stop JMS routes at runtime, while there are still messages enqueued on the queue. If this option is false, and you stop the JMS route, then messages may be rejected, and the JMS broker would have to attempt redeliveries, which yet again may be rejected, and eventually the message may be moved at a dead l [...]
+| *camel.component.activemq.acknowledgement-mode* | The JMS acknowledgement mode defined as an Integer. Allows you to set vendor-specific extensions to the acknowledgment mode. For the regular modes, it is preferable to use the acknowledgementModeName instead. |  | Integer
+| *camel.component.activemq.acknowledgement-mode-name* | The JMS acknowledgement name, which is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | AUTO_ACKNOWLEDGE | String
+| *camel.component.activemq.allow-additional-headers* | This option is used to allow additional headers which may have values that are invalid according to JMS specification. For example some message systems such as WMQ do this with header names using prefix JMS_IBM_MQMD_ containing values with byte array or other invalid types. You can specify multiple header names separated by comma, and use as suffix for wildcard matching. |  | String
+| *camel.component.activemq.allow-auto-wired-connection-factory* | Whether to auto-discover ConnectionFactory from the registry, if no connection factory has been configured. If only one instance of ConnectionFactory is found then it will be used. This is enabled by default. | false | Boolean
+| *camel.component.activemq.allow-auto-wired-destination-resolver* | Whether to auto-discover DestinationResolver from the registry, if no destination resolver has been configured. If only one instance of DestinationResolver is found then it will be used. This is enabled by default. | false | Boolean
+| *camel.component.activemq.allow-null-body* | Whether to allow sending messages with no body. If this option is false and the message body is null, then an JMSException is thrown. | true | Boolean
+| *camel.component.activemq.allow-reply-manager-quick-stop* | Whether the DefaultMessageListenerContainer used in the reply managers for request-reply messaging allow the DefaultMessageListenerContainer.runningAllowed flag to quick stop in case JmsConfiguration#isAcceptMessagesWhileStopping is enabled, and org.apache.camel.CamelContext is currently being stopped. This quick stop ability is enabled by default in the regular JMS consumers but to enable for reply managers you must enable th [...]
+| *camel.component.activemq.always-copy-message* | If true, Camel will always make a JMS message copy of the message when it is passed to the producer for sending. Copying the message is needed in some situations, such as when a replyToDestinationSelectorName is set (incidentally, Camel will set the alwaysCopyMessage option to true, if a replyToDestinationSelectorName is set). | false | Boolean
+| *camel.component.activemq.async-consumer* | Whether the JmsConsumer processes the Exchange asynchronously. If enabled then the JmsConsumer may pickup the next message from the JMS queue, while the previous message is being processed asynchronously (by the Asynchronous Routing Engine). This means that messages may be processed not 100% strictly in order. If disabled (as default) then the Exchange is fully processed before the JmsConsumer will pickup the next message from the JMS queue.  [...]
+| *camel.component.activemq.async-start-listener* | Whether to startup the JmsConsumer message listener asynchronously, when starting a route. For example if a JmsConsumer cannot get a connection to a remote JMS broker, then it may block while retrying and/or failover. This will cause Camel to block while starting routes. By setting this option to true, you will let routes startup, while the JmsConsumer connects to the JMS broker using a dedicated thread in asynchronous mode. If this opt [...]
+| *camel.component.activemq.async-stop-listener* | Whether to stop the JmsConsumer message listener asynchronously, when stopping a route. | false | Boolean
+| *camel.component.activemq.auto-startup* | Specifies whether the consumer container should auto-startup. | true | Boolean
+| *camel.component.activemq.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.activemq.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.activemq.broker-u-r-l* | Sets the broker URL to use to connect to ActiveMQ |  | String
+| *camel.component.activemq.cache-level* | Sets the cache level by ID for the underlying JMS resources. See cacheLevelName option for more details. |  | Integer
+| *camel.component.activemq.cache-level-name* | Sets the cache level by name for the underlying JMS resources. Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER, CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See the Spring documentation and Transactions Cache Levels for more information. | CACHE_AUTO | String
+| *camel.component.activemq.client-id* | Sets the JMS client ID to use. Note that this value, if specified, must be unique and can only be used by a single JMS connection instance. It is typically only required for durable topic subscriptions. If using Apache ActiveMQ you may prefer to use Virtual Topics instead. |  | String
+| *camel.component.activemq.concurrent-consumers* | Specifies the default number of concurrent consumers when consuming from JMS (not for request/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. When doing request/reply over JMS then the option replyToConcurrentConsumers is used to control number of concurrent consumers on the reply message listener. | 1 | Integer
+| *camel.component.activemq.configuration* | Configuration of ActiveMQ. The option is a org.apache.camel.component.jms.JmsConfiguration type. |  | String
+| *camel.component.activemq.connection-factory* | The connection factory to be use. A connection factory must be configured either on the component or endpoint. The option is a javax.jms.ConnectionFactory type. |  | String
+| *camel.component.activemq.correlation-property* | Use this JMS property to correlate messages in InOut exchange pattern (request-reply) instead of JMSCorrelationID property. This allows you to exchange messages with systems that do not correlate messages using JMSCorrelationID JMS property. If used JMSCorrelationID will not be used or set by Camel. The value of here named property will be generated if not supplied in the header of the message under the same name. |  | String
+| *camel.component.activemq.default-task-executor-type* | Specifies what default TaskExecutor type to use in the DefaultMessageListenerContainer, for both consumer endpoints and the ReplyTo consumer of producer endpoints. Possible values: SimpleAsync (uses Spring's SimpleAsyncTaskExecutor) or ThreadPool (uses Spring's ThreadPoolTaskExecutor with optimal values - cached threadpool-like). If not set, it defaults to the previous behaviour, which uses a cached thread pool for consumer endpoi [...]
+| *camel.component.activemq.delivery-mode* | Specifies the delivery mode to be used. Possibles values are those defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT = 2. |  | Integer
+| *camel.component.activemq.delivery-persistent* | Specifies whether persistent delivery is used by default. | true | Boolean
+| *camel.component.activemq.destination-resolver* | A pluggable org.springframework.jms.support.destination.DestinationResolver that allows you to use your own resolver (for example, to lookup the real destination in a JNDI registry). The option is a org.springframework.jms.support.destination.DestinationResolver type. |  | String
+| *camel.component.activemq.durable-subscription-name* | The durable subscriber name for specifying durable topic subscriptions. The clientId option must be configured as well. |  | String
+| *camel.component.activemq.eager-loading-of-properties* | Enables eager loading of JMS properties as soon as a message is loaded which generally is inefficient as the JMS properties may not be required but sometimes can catch early any issues with the underlying JMS provider and the use of JMS properties. See also the option eagerLoadingOfBody. | false | Boolean
+| *camel.component.activemq.eager-poison-body* | If eagerLoadingOfProperties is enabled and the JMS message payload (JMS body or JMS properties) is poison (cannot be read/mapped), then set this text as the message body instead so the message can be processed (the cause of the poison are already stored as exception on the Exchange). This can be turned off by setting eagerPoisonBody=false. See also the option eagerLoadingOfProperties. | Poison JMS message due to ${exception.message} | String
+| *camel.component.activemq.enabled* | Whether to enable auto configuration of the activemq component. This is enabled by default. |  | Boolean
+| *camel.component.activemq.error-handler* | Specifies a org.springframework.util.ErrorHandler to be invoked in case of any uncaught exceptions thrown while processing a Message. By default these exceptions will be logged at the WARN level, if no errorHandler has been configured. You can configure logging level and whether stack traces should be logged using errorHandlerLoggingLevel and errorHandlerLogStackTrace options. This makes it much easier to configure, than having to code a custo [...]
+| *camel.component.activemq.error-handler-log-stack-trace* | Allows to control whether stacktraces should be logged or not, by the default errorHandler. | true | Boolean
+| *camel.component.activemq.error-handler-logging-level* | Allows to configure the default errorHandler logging level for logging uncaught exceptions. |  | LoggingLevel
+| *camel.component.activemq.exception-listener* | Specifies the JMS Exception Listener that is to be notified of any underlying JMS exceptions. The option is a javax.jms.ExceptionListener type. |  | String
+| *camel.component.activemq.explicit-qos-enabled* | Set if the deliveryMode, priority or timeToLive qualities of service should be used when sending messages. This option is based on Spring's JmsTemplate. The deliveryMode, priority and timeToLive options are applied to the current endpoint. This contrasts with the preserveMessageQos option, which operates at message granularity, reading QoS properties exclusively from the Camel In message headers. | false | Boolean
+| *camel.component.activemq.expose-listener-session* | Specifies whether the listener session should be exposed when consuming messages. | false | Boolean
+| *camel.component.activemq.force-send-original-message* | When using mapJmsMessage=false Camel will create a new JMS message to send to a new JMS destination if you touch the headers (get or set) during the route. Set this option to true to force Camel to send the original JMS message that was received. | false | Boolean
+| *camel.component.activemq.format-date-headers-to-iso8601* | Sets whether date headers should be formatted according to the ISO 8601 standard. | false | Boolean
+| *camel.component.activemq.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.activemq.idle-consumer-limit* | Specify the limit for the number of consumers that are allowed to be idle at any given time. | 1 | Integer
+| *camel.component.activemq.idle-task-execution-limit* | Specifies the limit for idle executions of a receive task, not having received any message within its execution. If this limit is reached, the task will shut down and leave receiving to other executing tasks (in the case of dynamic scheduling; see the maxConcurrentConsumers setting). There is additional doc available from Spring. | 1 | Integer
+| *camel.component.activemq.include-all-j-m-s-x-properties* | Whether to include all JMSXxxx properties when mapping from JMS to Camel Message. Setting this to true will include properties such as JMSXAppID, and JMSXUserID etc. Note: If you are using a custom headerFilterStrategy then this option does not apply. | false | Boolean
+| *camel.component.activemq.include-sent-j-m-s-message-i-d* | Only applicable when sending to JMS destination using InOnly (eg fire and forget). Enabling this option will enrich the Camel Exchange with the actual JMSMessageID that was used by the JMS client when the message was sent to the JMS destination. | false | Boolean
+| *camel.component.activemq.jms-key-format-strategy* | Pluggable strategy for encoding and decoding JMS keys so they can be compliant with the JMS specification. Camel provides two implementations out of the box: default and passthrough. The default strategy will safely marshal dots and hyphens (. and -). The passthrough strategy leaves the key as is. Can be used for JMS brokers which do not care whether JMS header keys contain illegal characters. You can provide your own implementation  [...]
+| *camel.component.activemq.jms-operations* | Allows you to use your own implementation of the org.springframework.jms.core.JmsOperations interface. Camel uses JmsTemplate as default. Can be used for testing purpose, but not used much as stated in the spring API docs. The option is a org.springframework.jms.core.JmsOperations type. |  | String
+| *camel.component.activemq.lazy-create-transaction-manager* | If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true. | true | Boolean
+| *camel.component.activemq.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.component.activemq.map-jms-message* | Specifies whether Camel should auto map the received JMS message to a suited payload type, such as javax.jms.TextMessage to a String etc. | true | Boolean
+| *camel.component.activemq.max-concurrent-consumers* | Specifies the maximum number of concurrent consumers when consuming from JMS (not for request/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. When doing request/reply over JMS then the option replyToMaxConcurrentConsumers is used to control number of concurrent consumers on the reply message listener. |  | Integer
+| *camel.component.activemq.max-messages-per-task* | The number of messages per task. -1 is unlimited. If you use a range for concurrent consumers (eg min max), then this option can be used to set a value to eg 100 to control how fast the consumers will shrink when less work is required. | -1 | Integer
+| *camel.component.activemq.message-converter* | To use a custom Spring org.springframework.jms.support.converter.MessageConverter so you can be in control how to map to/from a javax.jms.Message. The option is a org.springframework.jms.support.converter.MessageConverter type. |  | String
+| *camel.component.activemq.message-created-strategy* | To use the given MessageCreatedStrategy which are invoked when Camel creates new instances of javax.jms.Message objects when Camel is sending a JMS message. The option is a org.apache.camel.component.jms.MessageCreatedStrategy type. |  | String
+| *camel.component.activemq.message-id-enabled* | When sending, specifies whether message IDs should be added. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the message ID set to null; if the provider ignores the hint, the message ID must be set to its normal unique value. | true | Boolean
+| *camel.component.activemq.message-timestamp-enabled* | Specifies whether timestamps should be enabled by default on sending messages. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the timestamp set to zero; if the provider ignores the hint the timestamp must be set to its normal value. | true | Boolean
+| *camel.component.activemq.password* | Password to use with the ConnectionFactory. You can also configure username/password directly on the ConnectionFactory. |  | String
+| *camel.component.activemq.preserve-message-qos* | Set to true, if you want to send message using the QoS settings specified on the message, instead of the QoS settings on the JMS endpoint. The following three headers are considered JMSPriority, JMSDeliveryMode, and JMSExpiration. You can provide all or only some of them. If not provided, Camel will fall back to use the values from the endpoint instead. So, when using this option, the headers override the values from the endpoint. The e [...]
+| *camel.component.activemq.priority* | Values greater than 1 specify the message priority when sending (where 0 is the lowest priority and 9 is the highest). The explicitQosEnabled option must also be enabled in order for this option to have any effect. | 4 | Integer
+| *camel.component.activemq.pub-sub-no-local* | Specifies whether to inhibit the delivery of messages published by its own connection. | false | Boolean
+| *camel.component.activemq.queue-browse-strategy* | To use a custom QueueBrowseStrategy when browsing queues. The option is a org.apache.camel.component.jms.QueueBrowseStrategy type. |  | String
+| *camel.component.activemq.receive-timeout* | The timeout for receiving messages (in milliseconds). | 1000 | Long
+| *camel.component.activemq.recovery-interval* | Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds. | 5000 | Long
+| *camel.component.activemq.reply-on-timeout-to-max-concurrent-consumers* | Specifies the maximum number of concurrent consumers for continue routing when timeout occurred when using request/reply over JMS. | 1 | Integer
+| *camel.component.activemq.reply-to-cache-level-name* | Sets the cache level by name for the reply consumer when doing request/reply over JMS. This option only applies when using fixed reply queues (not temporary). Camel will by default use: CACHE_CONSUMER for exclusive or shared w/ replyToSelectorName. And CACHE_SESSION for shared without replyToSelectorName. Some JMS brokers such as IBM WebSphere may require to set the replyToCacheLevelName=CACHE_NONE to work. Note: If using temporary [...]
+| *camel.component.activemq.reply-to-concurrent-consumers* | Specifies the default number of concurrent consumers when doing request/reply over JMS. See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. | 1 | Integer
+| *camel.component.activemq.reply-to-max-concurrent-consumers* | Specifies the maximum number of concurrent consumers when using request/reply over JMS. See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. |  | Integer
+| *camel.component.activemq.reply-to-type* | Allows for explicitly specifying which kind of strategy to use for replyTo queues when doing request/reply over JMS. Possible values are: Temporary, Shared, or Exclusive. By default Camel will use temporary queues. However if replyTo has been configured, then Shared is used by default. This option allows you to use exclusive queues instead of shared ones. See Camel JMS documentation for more details, and especially the notes about the implicat [...]
+| *camel.component.activemq.request-timeout* | The timeout for waiting for a reply when using the InOut Exchange Pattern (in milliseconds). The default is 20 seconds. You can include the header CamelJmsRequestTimeout to override this endpoint configured timeout value, and thus have per message individual timeout values. See also the requestTimeoutCheckerInterval option. | 20000 | Long
+| *camel.component.activemq.request-timeout-checker-interval* | Configures how often Camel should check for timed out Exchanges when doing request/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout. | 1000 | Long
+| *camel.component.activemq.stream-message-type-enabled* | Sets whether StreamMessage type is enabled or not. Message payloads of streaming kind such as files, InputStream, etc will either by sent as BytesMessage or StreamMessage. This option controls which kind will be used. By default BytesMessage is used which enforces the entire message payload to be read into memory. By enabling this option the message payload is read into memory in chunks and each chunk is then written to the Strea [...]
+| *camel.component.activemq.subscription-durable* | Set whether to make the subscription durable. The durable subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a durable subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Only makes sense when listening to a topic (pub-sub domain), therefore this method switches  [...]
+| *camel.component.activemq.subscription-name* | Set the name of a subscription to create. To be applied in case of a topic (pub-sub domain) with a shared or durable subscription. The subscription name needs to be unique within this client's JMS client id. Default is the class name of the specified message listener. Note: Only 1 concurrent consumer (which is the default of this message listener container) is allowed for each subscription, except for a shared subscription (which requires  [...]
+| *camel.component.activemq.subscription-shared* | Set whether to make the subscription shared. The shared subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a shared subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Note that shared subscriptions may also be durable, so this flag can (and often will) be combine [...]
+| *camel.component.activemq.task-executor* | Allows you to specify a custom task executor for consuming messages. The option is a org.springframework.core.task.TaskExecutor type. |  | String
+| *camel.component.activemq.test-connection-on-startup* | Specifies whether to test the connection on startup. This ensures that when Camel starts that all the JMS consumers have a valid connection to the JMS broker. If a connection cannot be granted then Camel throws an exception on startup. This ensures that Camel is not started with failed connections. The JMS producers is tested as well. | false | Boolean
+| *camel.component.activemq.time-to-live* | When sending messages, specifies the time-to-live of the message (in milliseconds). | -1 | Long
+| *camel.component.activemq.transacted* | Specifies whether to use transacted mode | false | Boolean
+| *camel.component.activemq.transaction-manager* | The Spring transaction manager to use. The option is a org.springframework.transaction.PlatformTransactionManager type. |  | String
+| *camel.component.activemq.transaction-name* | The name of the transaction to use. |  | String
+| *camel.component.activemq.transaction-timeout* | The timeout value of the transaction (in seconds), if using transacted mode. | -1 | Integer
+| *camel.component.activemq.transfer-exception* | If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a javax.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this opti [...]
+| *camel.component.activemq.transfer-exchange* | You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the p [...]
+| *camel.component.activemq.trust-all-packages* | Define if all Java packages are trusted or not (for Java object JMS message types). Notice its not recommended practice to send Java serialized objects over network. Setting this to true can expose security risks, so use this with care. | false | Boolean
+| *camel.component.activemq.use-message-i-d-as-correlation-i-d* | Specifies whether JMSMessageID should always be used as JMSCorrelationID for InOut messages. | false | Boolean
+| *camel.component.activemq.use-pooled-connection* | Enables or disables whether a PooledConnectionFactory will be used so that when messages are sent to ActiveMQ from outside of a message consuming thread, pooling will be used rather than the default with the Spring JmsTemplate which will create a new connection, session, producer for each message then close them all down again. The default value is true. | false | Boolean
+| *camel.component.activemq.use-single-connection* | Enables or disables whether a Spring SingleConnectionFactory will be used so that when messages are sent to ActiveMQ from outside of a message consuming thread, pooling will be used rather than the default with the Spring JmsTemplate which will create a new connection, session, producer for each message then close them all down again. The default value is false and a pooled connection is used by default. | false | Boolean
+| *camel.component.activemq.username* | Username to use with the ConnectionFactory. You can also configure username/password directly on the ConnectionFactory. |  | String
+| *camel.component.activemq.wait-for-provision-correlation-to-be-updated-counter* | Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request/reply over JMS and when the option useMessageIDAsCorrelationID is enabled. | 50 | Integer
+| *camel.component.activemq.wait-for-provision-correlation-to-be-updated-thread-sleeping-time* | Interval in millis to sleep each time while waiting for provisional correlation id to be updated. | 100 | Long
+|===
+
diff --git a/components-starter/camel-ahc-starter/src/main/docs/ahc-starter.adoc b/components-starter/camel-ahc-starter/src/main/docs/ahc-starter.adoc
new file mode 100644
index 0000000..36430cb
--- /dev/null
+++ b/components-starter/camel-ahc-starter/src/main/docs/ahc-starter.adoc
@@ -0,0 +1,34 @@
+== ahc - Spring Boot Auto-Configuration
+
+When using ahc with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ahc-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 10 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ahc.allow-java-serialized-object* | Whether to allow java serialization when a request uses context-type=application/x-java-serialized-object This is by default turned off. If you enable this then be aware that Java will deserialize the incoming data from the request to Java and that can be a potential security risk. | false | Boolean
+| *camel.component.ahc.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ahc.binding* | To use a custom AhcBinding which allows to control how to bind between AHC and Camel. The option is a org.apache.camel.component.ahc.AhcBinding type. |  | String
+| *camel.component.ahc.client* | To use a custom AsyncHttpClient. The option is a org.asynchttpclient.AsyncHttpClient type. |  | String
+| *camel.component.ahc.client-config* | To configure the AsyncHttpClient to use a custom com.ning.http.client.AsyncHttpClientConfig instance. The option is a org.asynchttpclient.AsyncHttpClientConfig type. |  | String
+| *camel.component.ahc.enabled* | Whether to enable auto configuration of the ahc component. This is enabled by default. |  | Boolean
+| *camel.component.ahc.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.ahc.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.ahc.ssl-context-parameters* | Reference to a org.apache.camel.support.jsse.SSLContextParameters in the Registry. Note that configuring this option will override any SSL/TLS configuration options provided through the clientConfig option at the endpoint or component level. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.ahc.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-ahc-ws-starter/src/main/docs/ahc-ws-starter.adoc b/components-starter/camel-ahc-ws-starter/src/main/docs/ahc-ws-starter.adoc
new file mode 100644
index 0000000..38ccd7c
--- /dev/null
+++ b/components-starter/camel-ahc-ws-starter/src/main/docs/ahc-ws-starter.adoc
@@ -0,0 +1,35 @@
+== ahc-ws - Spring Boot Auto-Configuration
+
+When using ahc-ws with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ahc-ws-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 11 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ahc-ws.allow-java-serialized-object* | Whether to allow java serialization when a request uses context-type=application/x-java-serialized-object This is by default turned off. If you enable this then be aware that Java will deserialize the incoming data from the request to Java and that can be a potential security risk. | false | Boolean
+| *camel.component.ahc-ws.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ahc-ws.binding* | To use a custom AhcBinding which allows to control how to bind between AHC and Camel. The option is a org.apache.camel.component.ahc.AhcBinding type. |  | String
+| *camel.component.ahc-ws.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.ahc-ws.client* | To use a custom AsyncHttpClient. The option is a org.asynchttpclient.AsyncHttpClient type. |  | String
+| *camel.component.ahc-ws.client-config* | To configure the AsyncHttpClient to use a custom com.ning.http.client.AsyncHttpClientConfig instance. The option is a org.asynchttpclient.AsyncHttpClientConfig type. |  | String
+| *camel.component.ahc-ws.enabled* | Whether to enable auto configuration of the ahc-ws component. This is enabled by default. |  | Boolean
+| *camel.component.ahc-ws.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.ahc-ws.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.component.ahc-ws.ssl-context-parameters* | Reference to a org.apache.camel.support.jsse.SSLContextParameters in the Registry. Note that configuring this option will override any SSL/TLS configuration options provided through the clientConfig option at the endpoint or component level. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.ahc-ws.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-amqp-starter/src/main/docs/amqp-starter.adoc b/components-starter/camel-amqp-starter/src/main/docs/amqp-starter.adoc
new file mode 100644
index 0000000..4b652b0
--- /dev/null
+++ b/components-starter/camel-amqp-starter/src/main/docs/amqp-starter.adoc
@@ -0,0 +1,110 @@
+== amqp - Spring Boot Auto-Configuration
+
+When using amqp with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-amqp-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 86 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.amqp.accept-messages-while-stopping* | Specifies whether the consumer accept messages while it is stopping. You may consider enabling this option, if you start and stop JMS routes at runtime, while there are still messages enqueued on the queue. If this option is false, and you stop the JMS route, then messages may be rejected, and the JMS broker would have to attempt redeliveries, which yet again may be rejected, and eventually the message may be moved at a dead lette [...]
+| *camel.component.amqp.acknowledgement-mode* | The JMS acknowledgement mode defined as an Integer. Allows you to set vendor-specific extensions to the acknowledgment mode. For the regular modes, it is preferable to use the acknowledgementModeName instead. |  | Integer
+| *camel.component.amqp.acknowledgement-mode-name* | The JMS acknowledgement name, which is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | AUTO_ACKNOWLEDGE | String
+| *camel.component.amqp.allow-additional-headers* | This option is used to allow additional headers which may have values that are invalid according to JMS specification. For example some message systems such as WMQ do this with header names using prefix JMS_IBM_MQMD_ containing values with byte array or other invalid types. You can specify multiple header names separated by comma, and use as suffix for wildcard matching. |  | String
+| *camel.component.amqp.allow-auto-wired-connection-factory* | Whether to auto-discover ConnectionFactory from the registry, if no connection factory has been configured. If only one instance of ConnectionFactory is found then it will be used. This is enabled by default. | false | Boolean
+| *camel.component.amqp.allow-auto-wired-destination-resolver* | Whether to auto-discover DestinationResolver from the registry, if no destination resolver has been configured. If only one instance of DestinationResolver is found then it will be used. This is enabled by default. | false | Boolean
+| *camel.component.amqp.allow-null-body* | Whether to allow sending messages with no body. If this option is false and the message body is null, then an JMSException is thrown. | true | Boolean
+| *camel.component.amqp.allow-reply-manager-quick-stop* | Whether the DefaultMessageListenerContainer used in the reply managers for request-reply messaging allow the DefaultMessageListenerContainer.runningAllowed flag to quick stop in case JmsConfiguration#isAcceptMessagesWhileStopping is enabled, and org.apache.camel.CamelContext is currently being stopped. This quick stop ability is enabled by default in the regular JMS consumers but to enable for reply managers you must enable this f [...]
+| *camel.component.amqp.always-copy-message* | If true, Camel will always make a JMS message copy of the message when it is passed to the producer for sending. Copying the message is needed in some situations, such as when a replyToDestinationSelectorName is set (incidentally, Camel will set the alwaysCopyMessage option to true, if a replyToDestinationSelectorName is set). | false | Boolean
+| *camel.component.amqp.async-consumer* | Whether the JmsConsumer processes the Exchange asynchronously. If enabled then the JmsConsumer may pickup the next message from the JMS queue, while the previous message is being processed asynchronously (by the Asynchronous Routing Engine). This means that messages may be processed not 100% strictly in order. If disabled (as default) then the Exchange is fully processed before the JmsConsumer will pickup the next message from the JMS queue. Note [...]
+| *camel.component.amqp.async-start-listener* | Whether to startup the JmsConsumer message listener asynchronously, when starting a route. For example if a JmsConsumer cannot get a connection to a remote JMS broker, then it may block while retrying and/or failover. This will cause Camel to block while starting routes. By setting this option to true, you will let routes startup, while the JmsConsumer connects to the JMS broker using a dedicated thread in asynchronous mode. If this option  [...]
+| *camel.component.amqp.async-stop-listener* | Whether to stop the JmsConsumer message listener asynchronously, when stopping a route. | false | Boolean
+| *camel.component.amqp.auto-startup* | Specifies whether the consumer container should auto-startup. | true | Boolean
+| *camel.component.amqp.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.amqp.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.amqp.cache-level* | Sets the cache level by ID for the underlying JMS resources. See cacheLevelName option for more details. |  | Integer
+| *camel.component.amqp.cache-level-name* | Sets the cache level by name for the underlying JMS resources. Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER, CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See the Spring documentation and Transactions Cache Levels for more information. | CACHE_AUTO | String
+| *camel.component.amqp.client-id* | Sets the JMS client ID to use. Note that this value, if specified, must be unique and can only be used by a single JMS connection instance. It is typically only required for durable topic subscriptions. If using Apache ActiveMQ you may prefer to use Virtual Topics instead. |  | String
+| *camel.component.amqp.concurrent-consumers* | Specifies the default number of concurrent consumers when consuming from JMS (not for request/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. When doing request/reply over JMS then the option replyToConcurrentConsumers is used to control number of concurrent consumers on the reply message listener. | 1 | Integer
+| *camel.component.amqp.configuration* | To use a shared JMS configuration. The option is a org.apache.camel.component.jms.JmsConfiguration type. |  | String
+| *camel.component.amqp.connection-factory* | The connection factory to be use. A connection factory must be configured either on the component or endpoint. The option is a javax.jms.ConnectionFactory type. |  | String
+| *camel.component.amqp.correlation-property* | Use this JMS property to correlate messages in InOut exchange pattern (request-reply) instead of JMSCorrelationID property. This allows you to exchange messages with systems that do not correlate messages using JMSCorrelationID JMS property. If used JMSCorrelationID will not be used or set by Camel. The value of here named property will be generated if not supplied in the header of the message under the same name. |  | String
+| *camel.component.amqp.default-task-executor-type* | Specifies what default TaskExecutor type to use in the DefaultMessageListenerContainer, for both consumer endpoints and the ReplyTo consumer of producer endpoints. Possible values: SimpleAsync (uses Spring's SimpleAsyncTaskExecutor) or ThreadPool (uses Spring's ThreadPoolTaskExecutor with optimal values - cached threadpool-like). If not set, it defaults to the previous behaviour, which uses a cached thread pool for consumer endpoints  [...]
+| *camel.component.amqp.delivery-mode* | Specifies the delivery mode to be used. Possibles values are those defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT = 2. |  | Integer
+| *camel.component.amqp.delivery-persistent* | Specifies whether persistent delivery is used by default. | true | Boolean
+| *camel.component.amqp.destination-resolver* | A pluggable org.springframework.jms.support.destination.DestinationResolver that allows you to use your own resolver (for example, to lookup the real destination in a JNDI registry). The option is a org.springframework.jms.support.destination.DestinationResolver type. |  | String
+| *camel.component.amqp.durable-subscription-name* | The durable subscriber name for specifying durable topic subscriptions. The clientId option must be configured as well. |  | String
+| *camel.component.amqp.eager-loading-of-properties* | Enables eager loading of JMS properties as soon as a message is loaded which generally is inefficient as the JMS properties may not be required but sometimes can catch early any issues with the underlying JMS provider and the use of JMS properties. See also the option eagerLoadingOfBody. | false | Boolean
+| *camel.component.amqp.eager-poison-body* | If eagerLoadingOfProperties is enabled and the JMS message payload (JMS body or JMS properties) is poison (cannot be read/mapped), then set this text as the message body instead so the message can be processed (the cause of the poison are already stored as exception on the Exchange). This can be turned off by setting eagerPoisonBody=false. See also the option eagerLoadingOfProperties. | Poison JMS message due to ${exception.message} | String
+| *camel.component.amqp.enabled* | Whether to enable auto configuration of the amqp component. This is enabled by default. |  | Boolean
+| *camel.component.amqp.error-handler* | Specifies a org.springframework.util.ErrorHandler to be invoked in case of any uncaught exceptions thrown while processing a Message. By default these exceptions will be logged at the WARN level, if no errorHandler has been configured. You can configure logging level and whether stack traces should be logged using errorHandlerLoggingLevel and errorHandlerLogStackTrace options. This makes it much easier to configure, than having to code a custom er [...]
+| *camel.component.amqp.error-handler-log-stack-trace* | Allows to control whether stacktraces should be logged or not, by the default errorHandler. | true | Boolean
+| *camel.component.amqp.error-handler-logging-level* | Allows to configure the default errorHandler logging level for logging uncaught exceptions. |  | LoggingLevel
+| *camel.component.amqp.exception-listener* | Specifies the JMS Exception Listener that is to be notified of any underlying JMS exceptions. The option is a javax.jms.ExceptionListener type. |  | String
+| *camel.component.amqp.explicit-qos-enabled* | Set if the deliveryMode, priority or timeToLive qualities of service should be used when sending messages. This option is based on Spring's JmsTemplate. The deliveryMode, priority and timeToLive options are applied to the current endpoint. This contrasts with the preserveMessageQos option, which operates at message granularity, reading QoS properties exclusively from the Camel In message headers. | false | Boolean
+| *camel.component.amqp.expose-listener-session* | Specifies whether the listener session should be exposed when consuming messages. | false | Boolean
+| *camel.component.amqp.force-send-original-message* | When using mapJmsMessage=false Camel will create a new JMS message to send to a new JMS destination if you touch the headers (get or set) during the route. Set this option to true to force Camel to send the original JMS message that was received. | false | Boolean
+| *camel.component.amqp.format-date-headers-to-iso8601* | Sets whether date headers should be formatted according to the ISO 8601 standard. | false | Boolean
+| *camel.component.amqp.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.amqp.idle-consumer-limit* | Specify the limit for the number of consumers that are allowed to be idle at any given time. | 1 | Integer
+| *camel.component.amqp.idle-task-execution-limit* | Specifies the limit for idle executions of a receive task, not having received any message within its execution. If this limit is reached, the task will shut down and leave receiving to other executing tasks (in the case of dynamic scheduling; see the maxConcurrentConsumers setting). There is additional doc available from Spring. | 1 | Integer
+| *camel.component.amqp.include-all-j-m-s-x-properties* | Whether to include all JMSXxxx properties when mapping from JMS to Camel Message. Setting this to true will include properties such as JMSXAppID, and JMSXUserID etc. Note: If you are using a custom headerFilterStrategy then this option does not apply. | false | Boolean
+| *camel.component.amqp.include-amqp-annotations* | Whether to include AMQP annotations when mapping from AMQP to Camel Message. Setting this to true will map AMQP message annotations to message headers. Due to limitations in Apache Qpid JMS API, currently delivery annotations are ignored. | false | Boolean
+| *camel.component.amqp.include-sent-j-m-s-message-i-d* | Only applicable when sending to JMS destination using InOnly (eg fire and forget). Enabling this option will enrich the Camel Exchange with the actual JMSMessageID that was used by the JMS client when the message was sent to the JMS destination. | false | Boolean
+| *camel.component.amqp.jms-key-format-strategy* | Pluggable strategy for encoding and decoding JMS keys so they can be compliant with the JMS specification. Camel provides two implementations out of the box: default and passthrough. The default strategy will safely marshal dots and hyphens (. and -). The passthrough strategy leaves the key as is. Can be used for JMS brokers which do not care whether JMS header keys contain illegal characters. You can provide your own implementation of t [...]
+| *camel.component.amqp.jms-operations* | Allows you to use your own implementation of the org.springframework.jms.core.JmsOperations interface. Camel uses JmsTemplate as default. Can be used for testing purpose, but not used much as stated in the spring API docs. The option is a org.springframework.jms.core.JmsOperations type. |  | String
+| *camel.component.amqp.lazy-create-transaction-manager* | If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true. | true | Boolean
+| *camel.component.amqp.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.amqp.map-jms-message* | Specifies whether Camel should auto map the received JMS message to a suited payload type, such as javax.jms.TextMessage to a String etc. | true | Boolean
+| *camel.component.amqp.max-concurrent-consumers* | Specifies the maximum number of concurrent consumers when consuming from JMS (not for request/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. When doing request/reply over JMS then the option replyToMaxConcurrentConsumers is used to control number of concurrent consumers on the reply message listener. |  | Integer
+| *camel.component.amqp.max-messages-per-task* | The number of messages per task. -1 is unlimited. If you use a range for concurrent consumers (eg min max), then this option can be used to set a value to eg 100 to control how fast the consumers will shrink when less work is required. | -1 | Integer
+| *camel.component.amqp.message-converter* | To use a custom Spring org.springframework.jms.support.converter.MessageConverter so you can be in control how to map to/from a javax.jms.Message. The option is a org.springframework.jms.support.converter.MessageConverter type. |  | String
+| *camel.component.amqp.message-created-strategy* | To use the given MessageCreatedStrategy which are invoked when Camel creates new instances of javax.jms.Message objects when Camel is sending a JMS message. The option is a org.apache.camel.component.jms.MessageCreatedStrategy type. |  | String
+| *camel.component.amqp.message-id-enabled* | When sending, specifies whether message IDs should be added. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the message ID set to null; if the provider ignores the hint, the message ID must be set to its normal unique value. | true | Boolean
+| *camel.component.amqp.message-timestamp-enabled* | Specifies whether timestamps should be enabled by default on sending messages. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the timestamp set to zero; if the provider ignores the hint the timestamp must be set to its normal value. | true | Boolean
+| *camel.component.amqp.password* | Password to use with the ConnectionFactory. You can also configure username/password directly on the ConnectionFactory. |  | String
+| *camel.component.amqp.preserve-message-qos* | Set to true, if you want to send message using the QoS settings specified on the message, instead of the QoS settings on the JMS endpoint. The following three headers are considered JMSPriority, JMSDeliveryMode, and JMSExpiration. You can provide all or only some of them. If not provided, Camel will fall back to use the values from the endpoint instead. So, when using this option, the headers override the values from the endpoint. The expli [...]
+| *camel.component.amqp.priority* | Values greater than 1 specify the message priority when sending (where 0 is the lowest priority and 9 is the highest). The explicitQosEnabled option must also be enabled in order for this option to have any effect. | 4 | Integer
+| *camel.component.amqp.pub-sub-no-local* | Specifies whether to inhibit the delivery of messages published by its own connection. | false | Boolean
+| *camel.component.amqp.queue-browse-strategy* | To use a custom QueueBrowseStrategy when browsing queues. The option is a org.apache.camel.component.jms.QueueBrowseStrategy type. |  | String
+| *camel.component.amqp.receive-timeout* | The timeout for receiving messages (in milliseconds). | 1000 | Long
+| *camel.component.amqp.recovery-interval* | Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds. | 5000 | Long
+| *camel.component.amqp.reply-on-timeout-to-max-concurrent-consumers* | Specifies the maximum number of concurrent consumers for continue routing when timeout occurred when using request/reply over JMS. | 1 | Integer
+| *camel.component.amqp.reply-to-cache-level-name* | Sets the cache level by name for the reply consumer when doing request/reply over JMS. This option only applies when using fixed reply queues (not temporary). Camel will by default use: CACHE_CONSUMER for exclusive or shared w/ replyToSelectorName. And CACHE_SESSION for shared without replyToSelectorName. Some JMS brokers such as IBM WebSphere may require to set the replyToCacheLevelName=CACHE_NONE to work. Note: If using temporary que [...]
+| *camel.component.amqp.reply-to-concurrent-consumers* | Specifies the default number of concurrent consumers when doing request/reply over JMS. See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. | 1 | Integer
+| *camel.component.amqp.reply-to-max-concurrent-consumers* | Specifies the maximum number of concurrent consumers when using request/reply over JMS. See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. |  | Integer
+| *camel.component.amqp.reply-to-type* | Allows for explicitly specifying which kind of strategy to use for replyTo queues when doing request/reply over JMS. Possible values are: Temporary, Shared, or Exclusive. By default Camel will use temporary queues. However if replyTo has been configured, then Shared is used by default. This option allows you to use exclusive queues instead of shared ones. See Camel JMS documentation for more details, and especially the notes about the implications [...]
+| *camel.component.amqp.request-timeout* | The timeout for waiting for a reply when using the InOut Exchange Pattern (in milliseconds). The default is 20 seconds. You can include the header CamelJmsRequestTimeout to override this endpoint configured timeout value, and thus have per message individual timeout values. See also the requestTimeoutCheckerInterval option. | 20000 | Long
+| *camel.component.amqp.request-timeout-checker-interval* | Configures how often Camel should check for timed out Exchanges when doing request/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout. | 1000 | Long
+| *camel.component.amqp.stream-message-type-enabled* | Sets whether StreamMessage type is enabled or not. Message payloads of streaming kind such as files, InputStream, etc will either by sent as BytesMessage or StreamMessage. This option controls which kind will be used. By default BytesMessage is used which enforces the entire message payload to be read into memory. By enabling this option the message payload is read into memory in chunks and each chunk is then written to the StreamMes [...]
+| *camel.component.amqp.subscription-durable* | Set whether to make the subscription durable. The durable subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a durable subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Only makes sense when listening to a topic (pub-sub domain), therefore this method switches the  [...]
+| *camel.component.amqp.subscription-name* | Set the name of a subscription to create. To be applied in case of a topic (pub-sub domain) with a shared or durable subscription. The subscription name needs to be unique within this client's JMS client id. Default is the class name of the specified message listener. Note: Only 1 concurrent consumer (which is the default of this message listener container) is allowed for each subscription, except for a shared subscription (which requires JMS  [...]
+| *camel.component.amqp.subscription-shared* | Set whether to make the subscription shared. The shared subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a shared subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Note that shared subscriptions may also be durable, so this flag can (and often will) be combined wi [...]
+| *camel.component.amqp.task-executor* | Allows you to specify a custom task executor for consuming messages. The option is a org.springframework.core.task.TaskExecutor type. |  | String
+| *camel.component.amqp.test-connection-on-startup* | Specifies whether to test the connection on startup. This ensures that when Camel starts that all the JMS consumers have a valid connection to the JMS broker. If a connection cannot be granted then Camel throws an exception on startup. This ensures that Camel is not started with failed connections. The JMS producers is tested as well. | false | Boolean
+| *camel.component.amqp.time-to-live* | When sending messages, specifies the time-to-live of the message (in milliseconds). | -1 | Long
+| *camel.component.amqp.transacted* | Specifies whether to use transacted mode | false | Boolean
+| *camel.component.amqp.transaction-manager* | The Spring transaction manager to use. The option is a org.springframework.transaction.PlatformTransactionManager type. |  | String
+| *camel.component.amqp.transaction-name* | The name of the transaction to use. |  | String
+| *camel.component.amqp.transaction-timeout* | The timeout value of the transaction (in seconds), if using transacted mode. | -1 | Integer
+| *camel.component.amqp.transfer-exception* | If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a javax.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option t [...]
+| *camel.component.amqp.transfer-exchange* | You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the paylo [...]
+| *camel.component.amqp.use-message-i-d-as-correlation-i-d* | Specifies whether JMSMessageID should always be used as JMSCorrelationID for InOut messages. | false | Boolean
+| *camel.component.amqp.username* | Username to use with the ConnectionFactory. You can also configure username/password directly on the ConnectionFactory. |  | String
+| *camel.component.amqp.wait-for-provision-correlation-to-be-updated-counter* | Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request/reply over JMS and when the option useMessageIDAsCorrelationID is enabled. | 50 | Integer
+| *camel.component.amqp.wait-for-provision-correlation-to-be-updated-thread-sleeping-time* | Interval in millis to sleep each time while waiting for provisional correlation id to be updated. | 100 | Long
+|===
+
diff --git a/components-starter/camel-any23-starter/src/main/docs/any23-starter.adoc b/components-starter/camel-any23-starter/src/main/docs/any23-starter.adoc
new file mode 100644
index 0000000..af3bca4
--- /dev/null
+++ b/components-starter/camel-any23-starter/src/main/docs/any23-starter.adoc
@@ -0,0 +1,29 @@
+== any23 - Spring Boot Auto-Configuration
+
+When using any23 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-any23-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.any23.base-u-r-i* | The URI to use as base for building RDF entities if only relative paths are provided. |  | String
+| *camel.dataformat.any23.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.any23.enabled* | Whether to enable auto configuration of the any23 data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.any23.extractors* | List of Any23 extractors to be used in the unmarshal operation. A list of the available extractors can be found here here. If not provided, all the available extractors are used. |  | List
+| *camel.dataformat.any23.output-format* | What RDF syntax to unmarshal as, can be: NTRIPLES, TURTLE, NQUADS, RDFXML, JSONLD, RDFJSON, RDF4JMODEL. It is by default: RDF4JMODEL. |  | Any23OutputFormat
+|===
+
diff --git a/components-starter/camel-apns-starter/src/main/docs/apns-starter.adoc b/components-starter/camel-apns-starter/src/main/docs/apns-starter.adoc
new file mode 100644
index 0000000..4663466
--- /dev/null
+++ b/components-starter/camel-apns-starter/src/main/docs/apns-starter.adoc
@@ -0,0 +1,29 @@
+== apns - Spring Boot Auto-Configuration
+
+When using apns with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-apns-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.apns.apns-service* | The ApnsService to use. The org.apache.camel.component.apns.factory.ApnsServiceFactory can be used to build a ApnsService. The option is a com.notnoop.apns.ApnsService type. |  | String
+| *camel.component.apns.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.apns.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.apns.enabled* | Whether to enable auto configuration of the apns component. This is enabled by default. |  | Boolean
+| *camel.component.apns.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-as2-starter/src/main/docs/as2-starter.adoc b/components-starter/camel-as2-starter/src/main/docs/as2-starter.adoc
new file mode 100644
index 0000000..03ae050
--- /dev/null
+++ b/components-starter/camel-as2-starter/src/main/docs/as2-starter.adoc
@@ -0,0 +1,56 @@
+== as2 - Spring Boot Auto-Configuration
+
+When using as2 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-as2-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 32 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.as2.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.as2.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.as2.configuration.api-name* | What kind of operation to perform |  | AS2ApiName
+| *camel.component.as2.configuration.as2-from* | The value of the AS2From header of AS2 message. |  | String
+| *camel.component.as2.configuration.as2-message-structure* | The structure of AS2 Message. One of: PLAIN - No encryption, no signature, SIGNED - No encryption, signature, ENCRYPTED - Encryption, no signature, ENCRYPTED_SIGNED - Encryption, signature |  | AS2MessageStructure
+| *camel.component.as2.configuration.as2-to* | The value of the AS2To header of AS2 message. |  | String
+| *camel.component.as2.configuration.as2-version* | The version of the AS2 protocol. | 1.1 | String
+| *camel.component.as2.configuration.client-fqdn* | The Client Fully Qualified Domain Name (FQDN). Used in message ids sent by endpoint. | camel.apache.org | String
+| *camel.component.as2.configuration.compression-algorithm* | The algorithm used to compress EDI message. |  | AS2CompressionAlgorithm
+| *camel.component.as2.configuration.decrypting-private-key* | The key used to encrypt the EDI message. |  | PrivateKey
+| *camel.component.as2.configuration.disposition-notification-to* | The value of the Disposition-Notification-To header. Assigning a value to this parameter requests a message disposition notification (MDN) for the AS2 message. |  | String
+| *camel.component.as2.configuration.edi-message-transfer-encoding* | The transfer encoding of EDI message. |  | String
+| *camel.component.as2.configuration.edi-message-type* | The content type of EDI message. One of application/edifact, application/edi-x12, application/edi-consent |  | ContentType
+| *camel.component.as2.configuration.encrypting-algorithm* | The algorithm used to encrypt EDI message. |  | AS2EncryptionAlgorithm
+| *camel.component.as2.configuration.encrypting-certificate-chain* | The chain of certificates used to encrypt EDI message. |  | Certificate[]
+| *camel.component.as2.configuration.from* | The value of the From header of AS2 message. |  | String
+| *camel.component.as2.configuration.mdn-message-template* | The template used to format MDN message |  | String
+| *camel.component.as2.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.as2.configuration.request-uri* | The request URI of EDI message. | / | String
+| *camel.component.as2.configuration.server* | The value included in the Server message header identifying the AS2 Server. | Camel AS2 Server Endpoint | String
+| *camel.component.as2.configuration.server-fqdn* | The Server Fully Qualified Domain Name (FQDN). Used in message ids sent by endpoint. | camel.apache.org | String
+| *camel.component.as2.configuration.server-port-number* | The port number of server. |  | Integer
+| *camel.component.as2.configuration.signed-receipt-mic-algorithms* | The list of algorithms, in order of preference, requested to generate a message integrity check (MIC) returned in message dispostion notification (MDN) |  | String[]
+| *camel.component.as2.configuration.signing-algorithm* | The algorithm used to sign EDI message. |  | AS2SignatureAlgorithm
+| *camel.component.as2.configuration.signing-certificate-chain* | The chain of certificates used to sign EDI message. |  | Certificate[]
+| *camel.component.as2.configuration.signing-private-key* | The key used to sign the EDI message. |  | PrivateKey
+| *camel.component.as2.configuration.subject* | The value of Subject header of AS2 message. |  | String
+| *camel.component.as2.configuration.target-hostname* | The host name (IP or DNS name) of target host. |  | String
+| *camel.component.as2.configuration.target-port-number* | The port number of target host. -1 indicates the scheme default port. |  | Integer
+| *camel.component.as2.configuration.user-agent* | The value included in the User-Agent message header identifying the AS2 user agent. | Camel AS2 Client Endpoint | String
+| *camel.component.as2.enabled* | Whether to enable auto configuration of the as2 component. This is enabled by default. |  | Boolean
+| *camel.component.as2.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-asn1-starter/src/main/docs/asn1-starter.adoc b/components-starter/camel-asn1-starter/src/main/docs/asn1-starter.adoc
new file mode 100644
index 0000000..0554beb
--- /dev/null
+++ b/components-starter/camel-asn1-starter/src/main/docs/asn1-starter.adoc
@@ -0,0 +1,28 @@
+== asn1 - Spring Boot Auto-Configuration
+
+When using asn1 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-asn1-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.asn1.clazz-name* | Name of class to use when unmarshalling |  | String
+| *camel.dataformat.asn1.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.asn1.enabled* | Whether to enable auto configuration of the asn1 data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.asn1.using-iterator* | If the asn1 file has more then one entry, the setting this option to true, allows to work with the splitter EIP, to split the data using an iterator in a streaming mode. | false | Boolean
+|===
+
diff --git a/components-starter/camel-asterisk-starter/src/main/docs/asterisk-starter.adoc b/components-starter/camel-asterisk-starter/src/main/docs/asterisk-starter.adoc
new file mode 100644
index 0000000..dafccce
--- /dev/null
+++ b/components-starter/camel-asterisk-starter/src/main/docs/asterisk-starter.adoc
@@ -0,0 +1,28 @@
+== asterisk - Spring Boot Auto-Configuration
+
+When using asterisk with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-asterisk-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.asterisk.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.asterisk.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.asterisk.enabled* | Whether to enable auto configuration of the asterisk component. This is enabled by default. |  | Boolean
+| *camel.component.asterisk.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+|===
+
diff --git a/components-starter/camel-atmos-starter/src/main/docs/atmos-starter.adoc b/components-starter/camel-atmos-starter/src/main/docs/atmos-starter.adoc
new file mode 100644
index 0000000..67b3cee
--- /dev/null
+++ b/components-starter/camel-atmos-starter/src/main/docs/atmos-starter.adoc
@@ -0,0 +1,32 @@
+== atmos - Spring Boot Auto-Configuration
+
+When using atmos with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-atmos-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 8 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.atmos.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atmos.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.atmos.enabled* | Whether to enable auto configuration of the atmos component. This is enabled by default. |  | Boolean
+| *camel.component.atmos.full-token-id* | The token id to pass to the Atmos client |  | String
+| *camel.component.atmos.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+| *camel.component.atmos.secret-key* | The secret key to pass to the Atmos client (should be base64 encoded) |  | String
+| *camel.component.atmos.ssl-validation* | Whether the Atmos client should perform SSL validation | false | Boolean
+| *camel.component.atmos.uri* | The URI of the server for the Atmos client to connect to |  | String
+|===
+
diff --git a/components-starter/camel-atmosphere-websocket-starter/src/main/docs/atmosphere-websocket-starter.adoc b/components-starter/camel-atmosphere-websocket-starter/src/main/docs/atmosphere-websocket-starter.adoc
new file mode 100644
index 0000000..2eed2dc
--- /dev/null
+++ b/components-starter/camel-atmosphere-websocket-starter/src/main/docs/atmosphere-websocket-starter.adoc
@@ -0,0 +1,36 @@
+== atmosphere-websocket - Spring Boot Auto-Configuration
+
+When using atmosphere-websocket with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-atmosphere-websocket-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 12 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.atmosphere-websocket.allow-java-serialized-object* | Whether to allow java serialization when a request uses context-type=application/x-java-serialized-object. This is by default turned off. If you enable this then be aware that Java will deserialize the incoming data from the request to Java and that can be a potential security risk. | false | Boolean
+| *camel.component.atmosphere-websocket.attachment-multipart-binding* | Whether to automatic bind multipart/form-data as attachments on the Camel Exchange. The options attachmentMultipartBinding=true and disableStreamCache=false cannot work together. Remove disableStreamCache to use AttachmentMultipartBinding. This is turn off by default as this may require servlet specific configuration to enable this when using Servlet's. | false | Boolean
+| *camel.component.atmosphere-websocket.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atmosphere-websocket.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.atmosphere-websocket.enabled* | Whether to enable auto configuration of the atmosphere-websocket component. This is enabled by default. |  | Boolean
+| *camel.component.atmosphere-websocket.file-name-ext-whitelist* | Whitelist of accepted filename extensions for accepting uploaded files. Multiple extensions can be separated by comma, such as txt,xml. |  | String
+| *camel.component.atmosphere-websocket.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.atmosphere-websocket.http-binding* | To use a custom HttpBinding to control the mapping between Camel message and HttpClient. The option is a org.apache.camel.http.common.HttpBinding type. |  | String
+| *camel.component.atmosphere-websocket.http-configuration* | To use the shared HttpConfiguration as base configuration. The option is a org.apache.camel.http.common.HttpConfiguration type. |  | String
+| *camel.component.atmosphere-websocket.http-registry* | To use a custom org.apache.camel.component.servlet.HttpRegistry. The option is a org.apache.camel.component.servlet.HttpRegistry type. |  | String
+| *camel.component.atmosphere-websocket.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is [...]
+| *camel.component.atmosphere-websocket.servlet-name* | Default name of servlet to use. The default name is CamelServlet. | CamelServlet | String
+|===
+
diff --git a/components-starter/camel-atom-starter/src/main/docs/atom-starter.adoc b/components-starter/camel-atom-starter/src/main/docs/atom-starter.adoc
new file mode 100644
index 0000000..e0b9e71
--- /dev/null
+++ b/components-starter/camel-atom-starter/src/main/docs/atom-starter.adoc
@@ -0,0 +1,27 @@
+== atom - Spring Boot Auto-Configuration
+
+When using atom with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-atom-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.atom.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atom.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.atom.enabled* | Whether to enable auto configuration of the atom component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-atomix-starter/src/main/docs/atomix-starter.adoc b/components-starter/camel-atomix-starter/src/main/docs/atomix-starter.adoc
new file mode 100644
index 0000000..6ad78a6
--- /dev/null
+++ b/components-starter/camel-atomix-starter/src/main/docs/atomix-starter.adoc
@@ -0,0 +1,97 @@
+== atomix - Spring Boot Auto-Configuration
+
+When using atomix with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-atomix-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 73 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.atomix-map.atomix* | The shared AtomixClient instance. The option is a io.atomix.AtomixClient type. |  | String
+| *camel.component.atomix-map.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atomix-map.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.atomix-map.configuration-uri* | The path to the AtomixClient configuration |  | String
+| *camel.component.atomix-map.configuration.default-action* | The default action. |  | AtomixMap$Action
+| *camel.component.atomix-map.configuration.key* | The key to use if none is set in the header or to listen for events for a specific key. |  | Object
+| *camel.component.atomix-map.configuration.result-header* | The header that wil carry the result. |  | String
+| *camel.component.atomix-map.configuration.ttl* | The resource ttl. |  | Long
+| *camel.component.atomix-map.enabled* | Whether to enable auto configuration of the atomix-map component. This is enabled by default. |  | Boolean
+| *camel.component.atomix-map.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+| *camel.component.atomix-map.nodes* | The nodes the AtomixClient should connect to |  | List
+| *camel.component.atomix-messaging.atomix* | The shared AtomixClient instance. The option is a io.atomix.AtomixClient type. |  | String
+| *camel.component.atomix-messaging.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atomix-messaging.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.atomix-messaging.configuration-uri* | The path to the AtomixClient configuration |  | String
+| *camel.component.atomix-messaging.configuration.broadcast-type* | The broadcast type. |  | AtomixMessaging$BroadcastType
+| *camel.component.atomix-messaging.configuration.channel-name* | The messaging channel name |  | String
+| *camel.component.atomix-messaging.configuration.default-action* | The default action. |  | AtomixMessaging$Action
+| *camel.component.atomix-messaging.configuration.member-name* | The Atomix Group member name |  | String
+| *camel.component.atomix-messaging.configuration.result-header* | The header that wil carry the result. |  | String
+| *camel.component.atomix-messaging.enabled* | Whether to enable auto configuration of the atomix-messaging component. This is enabled by default. |  | Boolean
+| *camel.component.atomix-messaging.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is pro [...]
+| *camel.component.atomix-messaging.nodes* | The nodes the AtomixClient should connect to |  | List
+| *camel.component.atomix-multimap.atomix* | The shared AtomixClient instance. The option is a io.atomix.AtomixClient type. |  | String
+| *camel.component.atomix-multimap.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atomix-multimap.configuration-uri* | The path to the AtomixClient configuration |  | String
+| *camel.component.atomix-multimap.configuration.default-action* | The default action. |  | AtomixMultiMap$Action
+| *camel.component.atomix-multimap.configuration.key* | The key to use if none is set in the header or to listen for events for a specific key. |  | Object
+| *camel.component.atomix-multimap.configuration.result-header* | The header that wil carry the result. |  | String
+| *camel.component.atomix-multimap.configuration.ttl* | The resource ttl. |  | Long
+| *camel.component.atomix-multimap.enabled* | Whether to enable auto configuration of the atomix-multimap component. This is enabled by default. |  | Boolean
+| *camel.component.atomix-multimap.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+| *camel.component.atomix-multimap.nodes* | The nodes the AtomixClient should connect to |  | List
+| *camel.component.atomix-queue.atomix* | The shared AtomixClient instance. The option is a io.atomix.AtomixClient type. |  | String
+| *camel.component.atomix-queue.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atomix-queue.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.atomix-queue.configuration-uri* | The path to the AtomixClient configuration |  | String
+| *camel.component.atomix-queue.configuration.default-action* | The default action. |  | AtomixQueue$Action
+| *camel.component.atomix-queue.configuration.result-header* | The header that wil carry the result. |  | String
+| *camel.component.atomix-queue.enabled* | Whether to enable auto configuration of the atomix-queue component. This is enabled by default. |  | Boolean
+| *camel.component.atomix-queue.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.atomix-queue.nodes* | The nodes the AtomixClient should connect to |  | List
+| *camel.component.atomix-set.atomix* | The shared AtomixClient instance. The option is a io.atomix.AtomixClient type. |  | String
+| *camel.component.atomix-set.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atomix-set.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.atomix-set.configuration-uri* | The path to the AtomixClient configuration |  | String
+| *camel.component.atomix-set.configuration.default-action* | The default action. |  | AtomixSet$Action
+| *camel.component.atomix-set.configuration.result-header* | The header that wil carry the result. |  | String
+| *camel.component.atomix-set.configuration.ttl* | The resource ttl. |  | Long
+| *camel.component.atomix-set.enabled* | Whether to enable auto configuration of the atomix-set component. This is enabled by default. |  | Boolean
+| *camel.component.atomix-set.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+| *camel.component.atomix-set.nodes* | The nodes the AtomixClient should connect to |  | List
+| *camel.component.atomix-value.atomix* | The shared AtomixClient instance. The option is a io.atomix.AtomixClient type. |  | String
+| *camel.component.atomix-value.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.atomix-value.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.atomix-value.configuration-uri* | The path to the AtomixClient configuration |  | String
+| *camel.component.atomix-value.configuration.default-action* | The default action. |  | AtomixValue$Action
+| *camel.component.atomix-value.configuration.result-header* | The header that wil carry the result. |  | String
+| *camel.component.atomix-value.configuration.ttl* | The resource ttl. |  | Long
+| *camel.component.atomix-value.enabled* | Whether to enable auto configuration of the atomix-value component. This is enabled by default. |  | Boolean
+| *camel.component.atomix-value.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.atomix-value.nodes* | The nodes the AtomixClient should connect to |  | List
+| *camel.component.atomix.cluster.service.address* | The address of the node - node only. |  | String
+| *camel.component.atomix.cluster.service.attributes* | Custom service attributes. |  | Map
+| *camel.component.atomix.cluster.service.configuration-uri* | The Atomix configuration uri. |  | String
+| *camel.component.atomix.cluster.service.enabled* | Sets if the atomix cluster service should be enabled or not, default is false. | false | Boolean
+| *camel.component.atomix.cluster.service.ephemeral* | Sets if the local member should join groups as PersistentMember or not (node only). |  | Boolean
+| *camel.component.atomix.cluster.service.id* | The cluster id. |  | String
+| *camel.component.atomix.cluster.service.mode* | Sets the cluster mode. |  | AtomixClusterServiceConfiguration$Mode
+| *camel.component.atomix.cluster.service.nodes* | The address of the nodes composing the cluster. |  | Set
+| *camel.component.atomix.cluster.service.order* | Service lookup order/priority. |  | Integer
+| *camel.component.atomix.cluster.service.storage-level* | The storage mode - node only. |  | StorageLevel
+| *camel.component.atomix.cluster.service.storage-path* | The storage directory - node only. |  | String
+|===
+
diff --git a/components-starter/camel-avro-starter/src/main/docs/avro-starter.adoc b/components-starter/camel-avro-starter/src/main/docs/avro-starter.adoc
new file mode 100644
index 0000000..541f843
--- /dev/null
+++ b/components-starter/camel-avro-starter/src/main/docs/avro-starter.adoc
@@ -0,0 +1,41 @@
+== avro - Spring Boot Auto-Configuration
+
+When using avro with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-avro-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 17 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.avro.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.avro.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.avro.configuration.host* | Hostname to use |  | String
+| *camel.component.avro.configuration.message-name* | The name of the message to send. |  | String
+| *camel.component.avro.configuration.port* | Port number to use |  | Integer
+| *camel.component.avro.configuration.protocol* | Avro protocol to use |  | Protocol
+| *camel.component.avro.configuration.protocol-class-name* | Avro protocol to use defined by the FQN class name |  | String
+| *camel.component.avro.configuration.protocol-location* | Avro protocol location |  | String
+| *camel.component.avro.configuration.reflection-protocol* | If protocol object provided is reflection protocol. Should be used only with protocol parameter because for protocolClassName protocol type will be auto detected | false | Boolean
+| *camel.component.avro.configuration.single-parameter* | If true, consumer parameter won't be wrapped into array. Will fail if protocol specifies more then 1 parameter for the message | false | Boolean
+| *camel.component.avro.configuration.transport* | Transport to use, can be either http or netty |  | AvroTransport
+| *camel.component.avro.configuration.uri-authority* | Authority to use (username and password) |  | String
+| *camel.component.avro.enabled* | Whether to enable auto configuration of the avro component. This is enabled by default. |  | Boolean
+| *camel.component.avro.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.dataformat.avro.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.avro.enabled* | Whether to enable auto configuration of the avro data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.avro.instance-class-name* | Class name to use for marshal and unmarshalling |  | String
+|===
+
diff --git a/components-starter/camel-aws-cw-starter/src/main/docs/aws-cw-starter.adoc b/components-starter/camel-aws-cw-starter/src/main/docs/aws-cw-starter.adoc
new file mode 100644
index 0000000..fcafa2b
--- /dev/null
+++ b/components-starter/camel-aws-cw-starter/src/main/docs/aws-cw-starter.adoc
@@ -0,0 +1,42 @@
+== aws-cw - Spring Boot Auto-Configuration
+
+When using aws-cw with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-cw-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 18 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-cw.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-cw.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-cw.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-cw.configuration.amazon-cw-client* | To use the AmazonCloudWatch as the client |  | AmazonCloudWatch
+| *camel.component.aws-cw.configuration.name* | The metric name |  | String
+| *camel.component.aws-cw.configuration.namespace* | The metric namespace |  | String
+| *camel.component.aws-cw.configuration.proxy-host* | To define a proxy host when instantiating the CW client |  | String
+| *camel.component.aws-cw.configuration.proxy-port* | To define a proxy port when instantiating the CW client |  | Integer
+| *camel.component.aws-cw.configuration.proxy-protocol* | To define a proxy protocol when instantiating the CW client |  | Protocol
+| *camel.component.aws-cw.configuration.region* | The region in which CW client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-cw.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-cw.configuration.timestamp* | The metric timestamp |  | Date
+| *camel.component.aws-cw.configuration.unit* | The metric unit |  | String
+| *camel.component.aws-cw.configuration.value* | The metric value |  | Double
+| *camel.component.aws-cw.enabled* | Whether to enable auto configuration of the aws-cw component. This is enabled by default. |  | Boolean
+| *camel.component.aws-cw.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.component.aws-cw.region* | The region in which CW client needs to work |  | String
+| *camel.component.aws-cw.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-ddb-starter/src/main/docs/aws-ddb-starter.adoc b/components-starter/camel-aws-ddb-starter/src/main/docs/aws-ddb-starter.adoc
new file mode 100644
index 0000000..ea16ca0
--- /dev/null
+++ b/components-starter/camel-aws-ddb-starter/src/main/docs/aws-ddb-starter.adoc
@@ -0,0 +1,61 @@
+== aws-ddb - Spring Boot Auto-Configuration
+
+When using aws-ddb with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-ddb-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 37 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-ddb.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ddb.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-ddb.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ddb.configuration.amazon-d-d-b-client* | To use the AmazonDynamoDB as the client |  | AmazonDynamoDB
+| *camel.component.aws-ddb.configuration.consistent-read* | Determines whether or not strong consistency should be enforced when data is read. | false | Boolean
+| *camel.component.aws-ddb.configuration.key-attribute-name* | Attribute name when creating table |  | String
+| *camel.component.aws-ddb.configuration.key-attribute-type* | Attribute type when creating table |  | String
+| *camel.component.aws-ddb.configuration.operation* | What operation to perform |  | DdbOperations
+| *camel.component.aws-ddb.configuration.proxy-host* | To define a proxy host when instantiating the DDB client |  | String
+| *camel.component.aws-ddb.configuration.proxy-port* | To define a proxy port when instantiating the DDB client. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | Integer
+| *camel.component.aws-ddb.configuration.proxy-protocol* | To define a proxy protocol when instantiating the DDB client |  | Protocol
+| *camel.component.aws-ddb.configuration.read-capacity* | The provisioned throughput to reserve for reading resources from your table |  | Long
+| *camel.component.aws-ddb.configuration.region* | The region in which DDB client needs to work |  | String
+| *camel.component.aws-ddb.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-ddb.configuration.table-name* | The name of the table currently worked with. |  | String
+| *camel.component.aws-ddb.configuration.write-capacity* | The provisioned throughput to reserved for writing resources to your table |  | Long
+| *camel.component.aws-ddb.enabled* | Whether to enable auto configuration of the aws-ddb component. This is enabled by default. |  | Boolean
+| *camel.component.aws-ddb.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-ddb.region* | The region in which DDB client needs to work |  | String
+| *camel.component.aws-ddb.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-ddbstream.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ddbstream.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-ddbstream.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.aws-ddbstream.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ddbstream.configuration.amazon-dynamo-db-streams-client* | Amazon DynamoDB client to use for all requests for this endpoint |  | AmazonDynamoDBStreams
+| *camel.component.aws-ddbstream.configuration.iterator-type* | Defines where in the DynaboDB stream to start getting records. Note that using TRIM_HORIZON can cause a significant delay before the stream has caught up to real-time. if {AT,AFTER}_SEQUENCE_NUMBER are used, then a sequenceNumberProvider MUST be supplied. |  | ShardIteratorType
+| *camel.component.aws-ddbstream.configuration.max-results-per-request* | Maximum number of records that will be fetched in each poll |  | Integer
+| *camel.component.aws-ddbstream.configuration.proxy-host* | To define a proxy host when instantiating the DDBStreams client |  | String
+| *camel.component.aws-ddbstream.configuration.proxy-port* | To define a proxy port when instantiating the DDBStreams client |  | Integer
+| *camel.component.aws-ddbstream.configuration.proxy-protocol* | To define a proxy protocol when instantiating the DDBStreams client |  | Protocol
+| *camel.component.aws-ddbstream.configuration.region* | The region in which DDBStreams client needs to work |  | String
+| *camel.component.aws-ddbstream.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-ddbstream.configuration.sequence-number-provider* | Provider for the sequence number when using one of the two ShardIteratorType.{AT,AFTER}_SEQUENCE_NUMBER iterator types. Can be a registry reference or a literal sequence number. |  | SequenceNumberProvider
+| *camel.component.aws-ddbstream.configuration.table-name* | Name of the dynamodb table |  | String
+| *camel.component.aws-ddbstream.enabled* | Whether to enable auto configuration of the aws-ddbstream component. This is enabled by default. |  | Boolean
+| *camel.component.aws-ddbstream.region* | Amazon AWS Region |  | String
+| *camel.component.aws-ddbstream.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-ec2-starter/src/main/docs/aws-ec2-starter.adoc b/components-starter/camel-aws-ec2-starter/src/main/docs/aws-ec2-starter.adoc
new file mode 100644
index 0000000..cb58fdf
--- /dev/null
+++ b/components-starter/camel-aws-ec2-starter/src/main/docs/aws-ec2-starter.adoc
@@ -0,0 +1,38 @@
+== aws-ec2 - Spring Boot Auto-Configuration
+
+When using aws-ec2 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-ec2-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-ec2.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ec2.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-ec2.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ec2.configuration.amazon-ec2-client* | To use a existing configured AmazonEC2Client as client |  | AmazonEC2
+| *camel.component.aws-ec2.configuration.operation* | The operation to perform. It can be createAndRunInstances, startInstances, stopInstances, terminateInstances, describeInstances, describeInstancesStatus, rebootInstances, monitorInstances, unmonitorInstances, createTags or deleteTags |  | EC2Operations
+| *camel.component.aws-ec2.configuration.proxy-host* | To define a proxy host when instantiating the EC2 client |  | String
+| *camel.component.aws-ec2.configuration.proxy-port* | To define a proxy port when instantiating the EC2 client |  | Integer
+| *camel.component.aws-ec2.configuration.proxy-protocol* | To define a proxy protocol when instantiating the EC2 client |  | Protocol
+| *camel.component.aws-ec2.configuration.region* | The region in which EC2 client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-ec2.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-ec2.enabled* | Whether to enable auto configuration of the aws-ec2 component. This is enabled by default. |  | Boolean
+| *camel.component.aws-ec2.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-ec2.region* | The region in which EC2 client needs to work |  | String
+| *camel.component.aws-ec2.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-ecs-starter/src/main/docs/aws-ecs-starter.adoc b/components-starter/camel-aws-ecs-starter/src/main/docs/aws-ecs-starter.adoc
new file mode 100644
index 0000000..e813beb
--- /dev/null
+++ b/components-starter/camel-aws-ecs-starter/src/main/docs/aws-ecs-starter.adoc
@@ -0,0 +1,38 @@
+== aws-ecs - Spring Boot Auto-Configuration
+
+When using aws-ecs with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-ecs-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-ecs.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ecs.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-ecs.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ecs.configuration.ecs-client* | To use a existing configured AWS ECS as client |  | AmazonECS
+| *camel.component.aws-ecs.configuration.operation* | The operation to perform |  | ECSOperations
+| *camel.component.aws-ecs.configuration.proxy-host* | To define a proxy host when instantiating the ECS client |  | String
+| *camel.component.aws-ecs.configuration.proxy-port* | To define a proxy port when instantiating the ECS client |  | Integer
+| *camel.component.aws-ecs.configuration.proxy-protocol* | To define a proxy protocol when instantiating the ECS client |  | Protocol
+| *camel.component.aws-ecs.configuration.region* | The region in which ECS client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-ecs.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-ecs.enabled* | Whether to enable auto configuration of the aws-ecs component. This is enabled by default. |  | Boolean
+| *camel.component.aws-ecs.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-ecs.region* | The region in which ECS client needs to work |  | String
+| *camel.component.aws-ecs.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-eks-starter/src/main/docs/aws-eks-starter.adoc b/components-starter/camel-aws-eks-starter/src/main/docs/aws-eks-starter.adoc
new file mode 100644
index 0000000..0a0878a
--- /dev/null
+++ b/components-starter/camel-aws-eks-starter/src/main/docs/aws-eks-starter.adoc
@@ -0,0 +1,38 @@
+== aws-eks - Spring Boot Auto-Configuration
+
+When using aws-eks with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-eks-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-eks.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-eks.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-eks.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-eks.configuration.eks-client* | To use a existing configured AWS EKS as client |  | AmazonEKS
+| *camel.component.aws-eks.configuration.operation* | The operation to perform |  | EKSOperations
+| *camel.component.aws-eks.configuration.proxy-host* | To define a proxy host when instantiating the EKS client |  | String
+| *camel.component.aws-eks.configuration.proxy-port* | To define a proxy port when instantiating the EKS client |  | Integer
+| *camel.component.aws-eks.configuration.proxy-protocol* | To define a proxy protocol when instantiating the EKS client |  | Protocol
+| *camel.component.aws-eks.configuration.region* | The region in which EKS client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-eks.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-eks.enabled* | Whether to enable auto configuration of the aws-eks component. This is enabled by default. |  | Boolean
+| *camel.component.aws-eks.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-eks.region* | The region in which EKS client needs to work |  | String
+| *camel.component.aws-eks.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-iam-starter/src/main/docs/aws-iam-starter.adoc b/components-starter/camel-aws-iam-starter/src/main/docs/aws-iam-starter.adoc
new file mode 100644
index 0000000..546ebe1
--- /dev/null
+++ b/components-starter/camel-aws-iam-starter/src/main/docs/aws-iam-starter.adoc
@@ -0,0 +1,38 @@
+== aws-iam - Spring Boot Auto-Configuration
+
+When using aws-iam with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-iam-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-iam.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-iam.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-iam.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-iam.configuration.iam-client* | To use a existing configured AWS IAM as client |  | AmazonIdentityManagement
+| *camel.component.aws-iam.configuration.operation* | The operation to perform |  | IAMOperations
+| *camel.component.aws-iam.configuration.proxy-host* | To define a proxy host when instantiating the IAM client |  | String
+| *camel.component.aws-iam.configuration.proxy-port* | To define a proxy port when instantiating the IAM client |  | Integer
+| *camel.component.aws-iam.configuration.proxy-protocol* | To define a proxy protocol when instantiating the IAM client |  | Protocol
+| *camel.component.aws-iam.configuration.region* | The region in which IAM client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-iam.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-iam.enabled* | Whether to enable auto configuration of the aws-iam component. This is enabled by default. |  | Boolean
+| *camel.component.aws-iam.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-iam.region* | The region in which IAM client needs to work |  | String
+| *camel.component.aws-iam.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-kinesis-starter/src/main/docs/aws-kinesis-starter.adoc b/components-starter/camel-aws-kinesis-starter/src/main/docs/aws-kinesis-starter.adoc
new file mode 100644
index 0000000..583f12f
--- /dev/null
+++ b/components-starter/camel-aws-kinesis-starter/src/main/docs/aws-kinesis-starter.adoc
@@ -0,0 +1,58 @@
+== aws-kinesis - Spring Boot Auto-Configuration
+
+When using aws-kinesis with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-kinesis-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 34 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-kinesis-firehose.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-kinesis-firehose.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-kinesis-firehose.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-kinesis-firehose.configuration.amazon-kinesis-firehose-client* | Amazon Kinesis Firehose client to use for all requests for this endpoint |  | AmazonKinesisFirehose
+| *camel.component.aws-kinesis-firehose.configuration.proxy-host* | To define a proxy host when instantiating the Kinesis Firehose client |  | String
+| *camel.component.aws-kinesis-firehose.configuration.proxy-port* | To define a proxy port when instantiating the Kinesis Firehose client |  | Integer
+| *camel.component.aws-kinesis-firehose.configuration.proxy-protocol* | To define a proxy protocol when instantiating the Kinesis Firehose client |  | Protocol
+| *camel.component.aws-kinesis-firehose.configuration.region* | The region in which Kinesis client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1)You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-kinesis-firehose.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-kinesis-firehose.configuration.stream-name* | Name of the stream |  | String
+| *camel.component.aws-kinesis-firehose.enabled* | Whether to enable auto configuration of the aws-kinesis-firehose component. This is enabled by default. |  | Boolean
+| *camel.component.aws-kinesis-firehose.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is [...]
+| *camel.component.aws-kinesis-firehose.region* | Amazon AWS Region |  | String
+| *camel.component.aws-kinesis-firehose.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-kinesis.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-kinesis.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-kinesis.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.aws-kinesis.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-kinesis.configuration.amazon-kinesis-client* | Amazon Kinesis client to use for all requests for this endpoint |  | AmazonKinesis
+| *camel.component.aws-kinesis.configuration.iterator-type* | Defines where in the Kinesis stream to start getting records |  | ShardIteratorType
+| *camel.component.aws-kinesis.configuration.max-results-per-request* | Maximum number of records that will be fetched in each poll | 1 | Integer
+| *camel.component.aws-kinesis.configuration.proxy-host* | To define a proxy host when instantiating the Kinesis client |  | String
+| *camel.component.aws-kinesis.configuration.proxy-port* | To define a proxy port when instantiating the Kinesis client |  | Integer
+| *camel.component.aws-kinesis.configuration.proxy-protocol* | To define a proxy protocol when instantiating the Kinesis client |  | Protocol
+| *camel.component.aws-kinesis.configuration.region* | The region in which Kinesis client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1)You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-kinesis.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-kinesis.configuration.sequence-number* | The sequence number to start polling from. Required if iteratorType is set to AFTER_SEQUENCE_NUMBER or AT_SEQUENCE_NUMBER |  | String
+| *camel.component.aws-kinesis.configuration.shard-closed* | Define what will be the behavior in case of shard closed. Possible value are ignore, silent and fail. In case of ignore a message will be logged and the consumer will restart from the beginning,in case of silent there will be no logging and the consumer will start from the beginning,in case of fail a ReachedClosedStateException will be raised |  | KinesisShardClosedStrategyEnum
+| *camel.component.aws-kinesis.configuration.shard-id* | Defines which shardId in the Kinesis stream to get records from |  | String
+| *camel.component.aws-kinesis.configuration.stream-name* | Name of the stream |  | String
+| *camel.component.aws-kinesis.enabled* | Whether to enable auto configuration of the aws-kinesis component. This is enabled by default. |  | Boolean
+| *camel.component.aws-kinesis.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processe [...]
+| *camel.component.aws-kinesis.region* | Amazon AWS Region |  | String
+| *camel.component.aws-kinesis.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-kms-starter/src/main/docs/aws-kms-starter.adoc b/components-starter/camel-aws-kms-starter/src/main/docs/aws-kms-starter.adoc
new file mode 100644
index 0000000..f1d9564
--- /dev/null
+++ b/components-starter/camel-aws-kms-starter/src/main/docs/aws-kms-starter.adoc
@@ -0,0 +1,38 @@
+== aws-kms - Spring Boot Auto-Configuration
+
+When using aws-kms with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-kms-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-kms.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-kms.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-kms.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-kms.configuration.kms-client* | To use a existing configured AWS KMS as client |  | AWSKMS
+| *camel.component.aws-kms.configuration.operation* | The operation to perform |  | KMSOperations
+| *camel.component.aws-kms.configuration.proxy-host* | To define a proxy host when instantiating the KMS client |  | String
+| *camel.component.aws-kms.configuration.proxy-port* | To define a proxy port when instantiating the KMS client |  | Integer
+| *camel.component.aws-kms.configuration.proxy-protocol* | To define a proxy protocol when instantiating the KMS client |  | Protocol
+| *camel.component.aws-kms.configuration.region* | The region in which KMS client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-kms.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-kms.enabled* | Whether to enable auto configuration of the aws-kms component. This is enabled by default. |  | Boolean
+| *camel.component.aws-kms.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-kms.region* | The region in which KMS client needs to work |  | String
+| *camel.component.aws-kms.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-lambda-starter/src/main/docs/aws-lambda-starter.adoc b/components-starter/camel-aws-lambda-starter/src/main/docs/aws-lambda-starter.adoc
new file mode 100644
index 0000000..e055acf
--- /dev/null
+++ b/components-starter/camel-aws-lambda-starter/src/main/docs/aws-lambda-starter.adoc
@@ -0,0 +1,38 @@
+== aws-lambda - Spring Boot Auto-Configuration
+
+When using aws-lambda with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-lambda-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-lambda.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-lambda.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-lambda.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-lambda.configuration.aws-lambda-client* | To use a existing configured AwsLambdaClient as client |  | AWSLambda
+| *camel.component.aws-lambda.configuration.operation* | The operation to perform. It can be listFunctions, getFunction, createFunction, deleteFunction or invokeFunction |  | LambdaOperations
+| *camel.component.aws-lambda.configuration.proxy-host* | To define a proxy host when instantiating the Lambda client |  | String
+| *camel.component.aws-lambda.configuration.proxy-port* | To define a proxy port when instantiating the Lambda client |  | Integer
+| *camel.component.aws-lambda.configuration.proxy-protocol* | To define a proxy protocol when instantiating the Lambda client |  | Protocol
+| *camel.component.aws-lambda.configuration.region* | Amazon AWS Region. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-lambda.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-lambda.enabled* | Whether to enable auto configuration of the aws-lambda component. This is enabled by default. |  | Boolean
+| *camel.component.aws-lambda.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+| *camel.component.aws-lambda.region* | Amazon AWS Region |  | String
+| *camel.component.aws-lambda.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-mq-starter/src/main/docs/aws-mq-starter.adoc b/components-starter/camel-aws-mq-starter/src/main/docs/aws-mq-starter.adoc
new file mode 100644
index 0000000..ec1ee51
--- /dev/null
+++ b/components-starter/camel-aws-mq-starter/src/main/docs/aws-mq-starter.adoc
@@ -0,0 +1,38 @@
+== aws-mq - Spring Boot Auto-Configuration
+
+When using aws-mq with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-mq-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-mq.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-mq.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-mq.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-mq.configuration.amazon-mq-client* | To use a existing configured AmazonMQClient as client |  | AmazonMQ
+| *camel.component.aws-mq.configuration.operation* | The operation to perform. It can be listBrokers,createBroker,deleteBroker |  | MQOperations
+| *camel.component.aws-mq.configuration.proxy-host* | To define a proxy host when instantiating the MQ client |  | String
+| *camel.component.aws-mq.configuration.proxy-port* | To define a proxy port when instantiating the MQ client |  | Integer
+| *camel.component.aws-mq.configuration.proxy-protocol* | To define a proxy protocol when instantiating the MQ client |  | Protocol
+| *camel.component.aws-mq.configuration.region* | The region in which MQ client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-mq.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-mq.enabled* | Whether to enable auto configuration of the aws-mq component. This is enabled by default. |  | Boolean
+| *camel.component.aws-mq.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.component.aws-mq.region* | The region in which MQ client needs to work |  | String
+| *camel.component.aws-mq.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-msk-starter/src/main/docs/aws-msk-starter.adoc b/components-starter/camel-aws-msk-starter/src/main/docs/aws-msk-starter.adoc
new file mode 100644
index 0000000..9f6359e
--- /dev/null
+++ b/components-starter/camel-aws-msk-starter/src/main/docs/aws-msk-starter.adoc
@@ -0,0 +1,38 @@
+== aws-msk - Spring Boot Auto-Configuration
+
+When using aws-msk with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-msk-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-msk.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-msk.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-msk.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-msk.configuration.msk-client* | To use a existing configured AWS MSK as client |  | AWSKafka
+| *camel.component.aws-msk.configuration.operation* | The operation to perform |  | MSKOperations
+| *camel.component.aws-msk.configuration.proxy-host* | To define a proxy host when instantiating the MSK client |  | String
+| *camel.component.aws-msk.configuration.proxy-port* | To define a proxy port when instantiating the MSK client |  | Integer
+| *camel.component.aws-msk.configuration.proxy-protocol* | To define a proxy protocol when instantiating the MSK client |  | Protocol
+| *camel.component.aws-msk.configuration.region* | The region in which MSK client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-msk.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-msk.enabled* | Whether to enable auto configuration of the aws-msk component. This is enabled by default. |  | Boolean
+| *camel.component.aws-msk.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-msk.region* | The region in which MSK client needs to work |  | String
+| *camel.component.aws-msk.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-s3-starter/src/main/docs/aws-s3-starter.adoc b/components-starter/camel-aws-s3-starter/src/main/docs/aws-s3-starter.adoc
new file mode 100644
index 0000000..dc118e8
--- /dev/null
+++ b/components-starter/camel-aws-s3-starter/src/main/docs/aws-s3-starter.adoc
@@ -0,0 +1,65 @@
+== aws-s3 - Spring Boot Auto-Configuration
+
+When using aws-s3 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-s3-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 41 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-s3.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-s3.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-s3.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.aws-s3.configuration.accelerate-mode-enabled* | Define if Accelerate Mode enabled is true or false | false | Boolean
+| *camel.component.aws-s3.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-s3.configuration.amazon-s3-client* | Reference to a com.amazonaws.services.s3.AmazonS3 in the registry. |  | AmazonS3
+| *camel.component.aws-s3.configuration.auto-create-bucket* | Setting the autocreation of the bucket | true | Boolean
+| *camel.component.aws-s3.configuration.autoclose-body* | If this option is true and includeBody is true, then the S3Object.close() method will be called on exchange completion. This option is strongly related to includeBody option. In case of setting includeBody to true and autocloseBody to false, it will be up to the caller to close the S3Object stream. Setting autocloseBody to true, will close the S3Object stream automatically. | true | Boolean
+| *camel.component.aws-s3.configuration.aws-k-m-s-key-id* | Define the id of KMS key to use in case KMS is enabled |  | String
+| *camel.component.aws-s3.configuration.bucket-name* |  |  | String
+| *camel.component.aws-s3.configuration.chunked-encoding-disabled* | Define if disabled Chunked Encoding is true or false | false | Boolean
+| *camel.component.aws-s3.configuration.delete-after-read* | Delete objects from S3 after they have been retrieved. The delete is only performed if the Exchange is committed. If a rollback occurs, the object is not deleted. If this option is false, then the same objects will be retrieve over and over again on the polls. Therefore you need to use the Idempotent Consumer EIP in the route to filter out duplicates. You can filter using the S3Constants#BUCKET_NAME and S3Constants#KEY headers, [...]
+| *camel.component.aws-s3.configuration.delete-after-write* | Delete file object after the S3 file has been uploaded | false | Boolean
+| *camel.component.aws-s3.configuration.delimiter* | The delimiter which is used in the com.amazonaws.services.s3.model.ListObjectsRequest to only consume objects we are interested in. |  | String
+| *camel.component.aws-s3.configuration.dualstack-enabled* | Define if Dualstack enabled is true or false | false | Boolean
+| *camel.component.aws-s3.configuration.encryption-materials* | The encryption materials to use in case of Symmetric/Asymmetric client usage |  | EncryptionMaterials
+| *camel.component.aws-s3.configuration.file-name* | To get the object from the bucket with the given file name |  | String
+| *camel.component.aws-s3.configuration.force-global-bucket-access-enabled* | Define if Force Global Bucket Access enabled is true or false | false | Boolean
+| *camel.component.aws-s3.configuration.include-body* | If it is true, the exchange body will be set to a stream to the contents of the file. If false, the headers will be set with the S3 object metadata, but the body will be null. This option is strongly related to autocloseBody option. In case of setting includeBody to true and autocloseBody to false, it will be up to the caller to close the S3Object stream. Setting autocloseBody to true, will close the S3Object stream automatically. | [...]
+| *camel.component.aws-s3.configuration.key-name* | Setting the key name for an element in the bucket through endpoint parameter |  | String
+| *camel.component.aws-s3.configuration.multi-part-upload* | If it is true, camel will upload the file with multi part format, the part size is decided by the option of partSize | false | Boolean
+| *camel.component.aws-s3.configuration.operation* | The operation to do in case the user don't want to do only an upload |  | S3Operations
+| *camel.component.aws-s3.configuration.part-size* | Setup the partSize which is used in multi part upload, the default size is 25M. | 26214400 | Long
+| *camel.component.aws-s3.configuration.path-style-access* | Whether or not the S3 client should use path style access | false | Boolean
+| *camel.component.aws-s3.configuration.payload-signing-enabled* | Define if Payload Signing enabled is true or false | false | Boolean
+| *camel.component.aws-s3.configuration.policy* | The policy for this queue to set in the com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method. |  | String
+| *camel.component.aws-s3.configuration.prefix* | The prefix which is used in the com.amazonaws.services.s3.model.ListObjectsRequest to only consume objects we are interested in. |  | String
+| *camel.component.aws-s3.configuration.proxy-host* | To define a proxy host when instantiating the SQS client |  | String
+| *camel.component.aws-s3.configuration.proxy-port* | Specify a proxy port to be used inside the client definition. |  | Integer
+| *camel.component.aws-s3.configuration.proxy-protocol* | To define a proxy protocol when instantiating the S3 client |  | Protocol
+| *camel.component.aws-s3.configuration.region* | The region in which S3 client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-s3.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-s3.configuration.server-side-encryption* | Sets the server-side encryption algorithm when encrypting the object using AWS-managed keys. For example use AES256. |  | String
+| *camel.component.aws-s3.configuration.storage-class* | The storage class to set in the com.amazonaws.services.s3.model.PutObjectRequest request. |  | String
+| *camel.component.aws-s3.configuration.use-aws-k-m-s* | Define if KMS must be used or not | false | Boolean
+| *camel.component.aws-s3.configuration.use-encryption* | Define if encryption must be used or not | false | Boolean
+| *camel.component.aws-s3.configuration.use-i-a-m-credentials* | Set whether the S3 client should expect to load credentials on an EC2 instance or to expect static credentials to be passed in. | false | Boolean
+| *camel.component.aws-s3.enabled* | Whether to enable auto configuration of the aws-s3 component. This is enabled by default. |  | Boolean
+| *camel.component.aws-s3.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.component.aws-s3.region* | The region where the bucket is located. This option is used in the com.amazonaws.services.s3.model.CreateBucketRequest. |  | String
+| *camel.component.aws-s3.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-sdb-starter/src/main/docs/aws-sdb-starter.adoc b/components-starter/camel-aws-sdb-starter/src/main/docs/aws-sdb-starter.adoc
new file mode 100644
index 0000000..040e507
--- /dev/null
+++ b/components-starter/camel-aws-sdb-starter/src/main/docs/aws-sdb-starter.adoc
@@ -0,0 +1,27 @@
+== aws-sdb - Spring Boot Auto-Configuration
+
+When using aws-sdb with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-sdb-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-sdb.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-sdb.enabled* | Whether to enable auto configuration of the aws-sdb component. This is enabled by default. |  | Boolean
+| *camel.component.aws-sdb.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-aws-ses-starter/src/main/docs/aws-ses-starter.adoc b/components-starter/camel-aws-ses-starter/src/main/docs/aws-ses-starter.adoc
new file mode 100644
index 0000000..ac4c0cb
--- /dev/null
+++ b/components-starter/camel-aws-ses-starter/src/main/docs/aws-ses-starter.adoc
@@ -0,0 +1,42 @@
+== aws-ses - Spring Boot Auto-Configuration
+
+When using aws-ses with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-ses-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 18 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-ses.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ses.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-ses.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-ses.configuration.amazon-s-e-s-client* | To use the AmazonSimpleEmailService as the client |  | AmazonSimpleEmailService
+| *camel.component.aws-ses.configuration.from* | The sender's email address. |  | String
+| *camel.component.aws-ses.configuration.proxy-host* | To define a proxy host when instantiating the SES client |  | String
+| *camel.component.aws-ses.configuration.proxy-port* | To define a proxy port when instantiating the SES client |  | Integer
+| *camel.component.aws-ses.configuration.proxy-protocol* | To define a proxy protocol when instantiating the SES client |  | Protocol
+| *camel.component.aws-ses.configuration.region* | The region in which SES client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-ses.configuration.reply-to-addresses* | List of reply-to email address(es) for the message, override it using 'CamelAwsSesReplyToAddresses' header. |  | List
+| *camel.component.aws-ses.configuration.return-path* | The email address to which bounce notifications are to be forwarded, override it using 'CamelAwsSesReturnPath' header. |  | String
+| *camel.component.aws-ses.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-ses.configuration.subject* | The subject which is used if the message header 'CamelAwsSesSubject' is not present. |  | String
+| *camel.component.aws-ses.configuration.to* | List of destination email address. Can be overriden with 'CamelAwsSesTo' header. |  | List
+| *camel.component.aws-ses.enabled* | Whether to enable auto configuration of the aws-ses component. This is enabled by default. |  | Boolean
+| *camel.component.aws-ses.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-ses.region* | The region in which SES client needs to work |  | String
+| *camel.component.aws-ses.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-sns-starter/src/main/docs/aws-sns-starter.adoc b/components-starter/camel-aws-sns-starter/src/main/docs/aws-sns-starter.adoc
new file mode 100644
index 0000000..044896c
--- /dev/null
+++ b/components-starter/camel-aws-sns-starter/src/main/docs/aws-sns-starter.adoc
@@ -0,0 +1,48 @@
+== aws-sns - Spring Boot Auto-Configuration
+
+When using aws-sns with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-sns-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 24 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-sns.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-sns.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-sns.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-sns.configuration.amazon-s-n-s-client* | To use the AmazonSNS as the client |  | AmazonSNS
+| *camel.component.aws-sns.configuration.amazon-s-q-s-client* | An SQS Client to use as bridge between SNS and SQS |  | AmazonSQS
+| *camel.component.aws-sns.configuration.auto-create-topic* | Setting the autocreation of the topic | true | Boolean
+| *camel.component.aws-sns.configuration.kms-master-key-id* | The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. |  | String
+| *camel.component.aws-sns.configuration.message-structure* | The message structure to use such as json |  | String
+| *camel.component.aws-sns.configuration.policy* | The policy for this queue |  | String
+| *camel.component.aws-sns.configuration.proxy-host* | To define a proxy host when instantiating the SNS client |  | String
+| *camel.component.aws-sns.configuration.proxy-port* | To define a proxy port when instantiating the SNS client |  | Integer
+| *camel.component.aws-sns.configuration.proxy-protocol* | To define a proxy protocol when instantiating the SNS client |  | Protocol
+| *camel.component.aws-sns.configuration.queue-url* | The queueUrl to subscribe to |  | String
+| *camel.component.aws-sns.configuration.region* | The region in which SNS client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-sns.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-sns.configuration.server-side-encryption-enabled* | Define if Server Side Encryption is enabled or not on the topic | false | Boolean
+| *camel.component.aws-sns.configuration.subject* | The subject which is used if the message header 'CamelAwsSnsSubject' is not present. |  | String
+| *camel.component.aws-sns.configuration.subscribe-s-n-sto-s-q-s* | Define if the subscription between SNS Topic and SQS must be done or not | false | Boolean
+| *camel.component.aws-sns.configuration.topic-arn* |  |  | String
+| *camel.component.aws-sns.configuration.topic-name* |  |  | String
+| *camel.component.aws-sns.enabled* | Whether to enable auto configuration of the aws-sns component. This is enabled by default. |  | Boolean
+| *camel.component.aws-sns.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-sns.region* | The region in which SNS client needs to work |  | String
+| *camel.component.aws-sns.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-sqs-starter/src/main/docs/aws-sqs-starter.adoc b/components-starter/camel-aws-sqs-starter/src/main/docs/aws-sqs-starter.adoc
new file mode 100644
index 0000000..4f5c36d
--- /dev/null
+++ b/components-starter/camel-aws-sqs-starter/src/main/docs/aws-sqs-starter.adoc
@@ -0,0 +1,66 @@
+== aws-sqs - Spring Boot Auto-Configuration
+
+When using aws-sqs with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-sqs-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 42 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-sqs.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-sqs.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-sqs.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.aws-sqs.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-sqs.configuration.amazon-a-w-s-host* | The hostname of the Amazon AWS cloud. | amazonaws.com | String
+| *camel.component.aws-sqs.configuration.amazon-s-q-s-client* | To use the AmazonSQS as client |  | AmazonSQS
+| *camel.component.aws-sqs.configuration.attribute-names* | A list of attribute names to receive when consuming. Multiple names can be separated by comma. |  | String
+| *camel.component.aws-sqs.configuration.auto-create-queue* | Setting the autocreation of the queue | true | Boolean
+| *camel.component.aws-sqs.configuration.concurrent-consumers* | Allows you to use multiple threads to poll the sqs queue to increase throughput | 1 | Integer
+| *camel.component.aws-sqs.configuration.default-visibility-timeout* | The default visibility timeout (in seconds) |  | Integer
+| *camel.component.aws-sqs.configuration.delay-queue* | Define if you want to apply delaySeconds option to the queue or on single messages | false | Boolean
+| *camel.component.aws-sqs.configuration.delay-seconds* | Delay sending messages for a number of seconds. |  | Integer
+| *camel.component.aws-sqs.configuration.delete-after-read* | Delete message from SQS after it has been read | true | Boolean
+| *camel.component.aws-sqs.configuration.delete-if-filtered* | Whether or not to send the DeleteMessage to the SQS queue if an exchange fails to get through a filter. If 'false' and exchange does not make it through a Camel filter upstream in the route, then don't send DeleteMessage. | true | Boolean
+| *camel.component.aws-sqs.configuration.extend-message-visibility* | If enabled then a scheduled background task will keep extending the message visibility on SQS. This is needed if it takes a long time to process the message. If set to true defaultVisibilityTimeout must be set. See details at Amazon docs. | false | Boolean
+| *camel.component.aws-sqs.configuration.kms-data-key-reuse-period-seconds* | The length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again. An integer representing seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours). Default: 300 (5 minutes). |  | Integer
+| *camel.component.aws-sqs.configuration.kms-master-key-id* | The ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK. |  | String
+| *camel.component.aws-sqs.configuration.maximum-message-size* | The maximumMessageSize (in bytes) an SQS message can contain for this queue. |  | Integer
+| *camel.component.aws-sqs.configuration.message-attribute-names* | A list of message attribute names to receive when consuming. Multiple names can be separated by comma. |  | String
+| *camel.component.aws-sqs.configuration.message-deduplication-id-strategy* | Only for FIFO queues. Strategy for setting the messageDeduplicationId on the message. Can be one of the following options: useExchangeId, useContentBasedDeduplication. For the useContentBasedDeduplication option, no messageDeduplicationId will be set on the message. |  | MessageDeduplicationIdStrategy
+| *camel.component.aws-sqs.configuration.message-group-id-strategy* | Only for FIFO queues. Strategy for setting the messageGroupId on the message. Can be one of the following options: useConstant, useExchangeId, usePropertyValue. For the usePropertyValue option, the value of property CamelAwsMessageGroupId will be used. |  | MessageGroupIdStrategy
+| *camel.component.aws-sqs.configuration.message-retention-period* | The messageRetentionPeriod (in seconds) a message will be retained by SQS for this queue. |  | Integer
+| *camel.component.aws-sqs.configuration.operation* | The operation to do in case the user don't want to send only a message |  | SqsOperations
+| *camel.component.aws-sqs.configuration.policy* | The policy for this queue |  | String
+| *camel.component.aws-sqs.configuration.protocol* | The underlying protocol used to communicate with SQS | https | String
+| *camel.component.aws-sqs.configuration.proxy-host* | To define a proxy host when instantiating the SQS client |  | String
+| *camel.component.aws-sqs.configuration.proxy-port* | To define a proxy port when instantiating the SQS client |  | Integer
+| *camel.component.aws-sqs.configuration.proxy-protocol* | To define a proxy protocol when instantiating the SQS client |  | Protocol
+| *camel.component.aws-sqs.configuration.queue-name* |  |  | String
+| *camel.component.aws-sqs.configuration.queue-owner-a-w-s-account-id* | Specify the queue owner aws account id when you need to connect the queue with different account owner. |  | String
+| *camel.component.aws-sqs.configuration.queue-url* | To define the queueUrl explicitly. All other parameters, which would influence the queueUrl, are ignored. This parameter is intended to be used, to connect to a mock implementation of SQS, for testing purposes. |  | String
+| *camel.component.aws-sqs.configuration.receive-message-wait-time-seconds* | If you do not specify WaitTimeSeconds in the request, the queue attribute ReceiveMessageWaitTimeSeconds is used to determine how long to wait. |  | Integer
+| *camel.component.aws-sqs.configuration.redrive-policy* | Specify the policy that send message to DeadLetter queue. See detail at Amazon docs. |  | String
+| *camel.component.aws-sqs.configuration.region* | Specify the queue region which could be used with queueOwnerAWSAccountId to build the service URL. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-sqs.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-sqs.configuration.server-side-encryption-enabled* | Define if Server Side Encryption is enabled or not on the queue | false | Boolean
+| *camel.component.aws-sqs.configuration.visibility-timeout* | The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request to set in the com.amazonaws.services.sqs.model.SetQueueAttributesRequest. This only make sense if its different from defaultVisibilityTimeout. It changes the queue visibility timeout attribute permanently. |  | Integer
+| *camel.component.aws-sqs.configuration.wait-time-seconds* | Duration in seconds (0 to 20) that the ReceiveMessage action call will wait until a message is in the queue to include in the response. |  | Integer
+| *camel.component.aws-sqs.enabled* | Whether to enable auto configuration of the aws-sqs component. This is enabled by default. |  | Boolean
+| *camel.component.aws-sqs.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-sqs.region* | Specify the queue region which could be used with queueOwnerAWSAccountId to build the service URL. |  | String
+| *camel.component.aws-sqs.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws-swf-starter/src/main/docs/aws-swf-starter.adoc b/components-starter/camel-aws-swf-starter/src/main/docs/aws-swf-starter.adoc
new file mode 100644
index 0000000..af499c8
--- /dev/null
+++ b/components-starter/camel-aws-swf-starter/src/main/docs/aws-swf-starter.adoc
@@ -0,0 +1,58 @@
+== aws-swf - Spring Boot Auto-Configuration
+
+When using aws-swf with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-swf-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 34 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-swf.access-key* | Amazon AWS Access Key. |  | String
+| *camel.component.aws-swf.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-swf.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.aws-swf.configuration.access-key* | Amazon AWS Access Key. |  | String
+| *camel.component.aws-swf.configuration.activity-list* | The list name to consume activities from. |  | String
+| *camel.component.aws-swf.configuration.activity-scheduling-options* | Activity scheduling options |  | ActivitySchedulingOptions
+| *camel.component.aws-swf.configuration.activity-thread-pool-size* | Maximum number of threads in work pool for activity. | 100 | Integer
+| *camel.component.aws-swf.configuration.activity-type-execution-options* | Activity execution options |  | ActivityTypeExecutionOptions
+| *camel.component.aws-swf.configuration.activity-type-registration-options* | Activity registration options |  | ActivityTypeRegistrationOptions
+| *camel.component.aws-swf.configuration.amazon-s-w-client* | To use the given AmazonSimpleWorkflowClient as client |  | AmazonSimpleWorkflow
+| *camel.component.aws-swf.configuration.child-policy* | The policy to use on child workflows when terminating a workflow. |  | String
+| *camel.component.aws-swf.configuration.client-configuration-parameters* | To configure the ClientConfiguration using the key/values from the Map. |  | Map
+| *camel.component.aws-swf.configuration.data-converter* | An instance of com.amazonaws.services.simpleworkflow.flow.DataConverter to use for serializing/deserializing the data. |  | DataConverter
+| *camel.component.aws-swf.configuration.domain-name* | The workflow domain to use. |  | String
+| *camel.component.aws-swf.configuration.event-name* | The workflow or activity event name to use. |  | String
+| *camel.component.aws-swf.configuration.execution-start-to-close-timeout* | Set the execution start to close timeout. | 3600 | String
+| *camel.component.aws-swf.configuration.operation* | Workflow operation | START | String
+| *camel.component.aws-swf.configuration.region* | Amazon AWS Region. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-swf.configuration.s-w-client-parameters* | To configure the AmazonSimpleWorkflowClient using the key/values from the Map. |  | Map
+| *camel.component.aws-swf.configuration.secret-key* | Amazon AWS Secret Key. |  | String
+| *camel.component.aws-swf.configuration.signal-name* | The name of the signal to send to the workflow. |  | String
+| *camel.component.aws-swf.configuration.start-workflow-options-parameters* | To configure the StartWorkflowOptions using the key/values from the Map. |  | Map
+| *camel.component.aws-swf.configuration.state-result-type* | The type of the result when a workflow state is queried. |  | String
+| *camel.component.aws-swf.configuration.task-start-to-close-timeout* | Set the task start to close timeout. | 600 | String
+| *camel.component.aws-swf.configuration.termination-details* | Details for terminating a workflow. |  | String
+| *camel.component.aws-swf.configuration.termination-reason* | The reason for terminating a workflow. |  | String
+| *camel.component.aws-swf.configuration.type* | Activity or workflow |  | String
+| *camel.component.aws-swf.configuration.version* | The workflow or activity event version to use. |  | String
+| *camel.component.aws-swf.configuration.workflow-list* | The list name to consume workflows from. |  | String
+| *camel.component.aws-swf.configuration.workflow-type-registration-options* | Workflow registration options |  | WorkflowTypeRegistrationOptions
+| *camel.component.aws-swf.enabled* | Whether to enable auto configuration of the aws-swf component. This is enabled by default. |  | Boolean
+| *camel.component.aws-swf.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws-swf.region* | Amazon AWS Region. |  | String
+| *camel.component.aws-swf.secret-key* | Amazon AWS Secret Key. |  | String
+|===
+
diff --git a/components-starter/camel-aws-translate-starter/src/main/docs/aws-translate-starter.adoc b/components-starter/camel-aws-translate-starter/src/main/docs/aws-translate-starter.adoc
new file mode 100644
index 0000000..ec783fe
--- /dev/null
+++ b/components-starter/camel-aws-translate-starter/src/main/docs/aws-translate-starter.adoc
@@ -0,0 +1,41 @@
+== aws-translate - Spring Boot Auto-Configuration
+
+When using aws-translate with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws-translate-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 17 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws-translate.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-translate.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws-translate.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws-translate.configuration.autodetect-source-language* | Being able to autodetect the source language | false | Boolean
+| *camel.component.aws-translate.configuration.operation* | The operation to perform |  | TranslateOperations
+| *camel.component.aws-translate.configuration.proxy-host* | To define a proxy host when instantiating the Translate client |  | String
+| *camel.component.aws-translate.configuration.proxy-port* | To define a proxy port when instantiating the Translate client |  | Integer
+| *camel.component.aws-translate.configuration.proxy-protocol* | To define a proxy protocol when instantiating the Translate client |  | Protocol
+| *camel.component.aws-translate.configuration.region* | The region in which Translate client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws-translate.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws-translate.configuration.source-language* | Source language to use |  | String
+| *camel.component.aws-translate.configuration.target-language* | Target language to use |  | String
+| *camel.component.aws-translate.configuration.translate-client* | To use a existing configured AWS Translate as client |  | AmazonTranslate
+| *camel.component.aws-translate.enabled* | Whether to enable auto configuration of the aws-translate component. This is enabled by default. |  | Boolean
+| *camel.component.aws-translate.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proces [...]
+| *camel.component.aws-translate.region* | The region in which Translate client needs to work |  | String
+| *camel.component.aws-translate.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-cw-starter/src/main/docs/aws2-cw-starter.adoc b/components-starter/camel-aws2-cw-starter/src/main/docs/aws2-cw-starter.adoc
new file mode 100644
index 0000000..2baa370
--- /dev/null
+++ b/components-starter/camel-aws2-cw-starter/src/main/docs/aws2-cw-starter.adoc
@@ -0,0 +1,42 @@
+== aws2-cw - Spring Boot Auto-Configuration
+
+When using aws2-cw with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-cw-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 18 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-cw.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-cw.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-cw.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-cw.configuration.amazon-cw-client* | To use the AmazonCloudWatch as the client |  | CloudWatchClient
+| *camel.component.aws2-cw.configuration.name* | The metric name |  | String
+| *camel.component.aws2-cw.configuration.namespace* | The metric namespace |  | String
+| *camel.component.aws2-cw.configuration.proxy-host* | To define a proxy host when instantiating the CW client |  | String
+| *camel.component.aws2-cw.configuration.proxy-port* | To define a proxy port when instantiating the CW client |  | Integer
+| *camel.component.aws2-cw.configuration.proxy-protocol* | To define a proxy protocol when instantiating the CW client |  | Protocol
+| *camel.component.aws2-cw.configuration.region* | The region in which EKS client needs to work. When using this parameter, the configuration will expect the lowercase name of the region (for example ap-east-1) You'll need to use the name Region.EU_WEST_1.id() |  | String
+| *camel.component.aws2-cw.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-cw.configuration.timestamp* | The metric timestamp |  | Instant
+| *camel.component.aws2-cw.configuration.unit* | The metric unit |  | String
+| *camel.component.aws2-cw.configuration.value* | The metric value |  | Double
+| *camel.component.aws2-cw.enabled* | Whether to enable auto configuration of the aws2-cw component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-cw.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws2-cw.region* | The region in which CW client needs to work |  | String
+| *camel.component.aws2-cw.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-ec2-starter/src/main/docs/aws2-ec2-starter.adoc b/components-starter/camel-aws2-ec2-starter/src/main/docs/aws2-ec2-starter.adoc
new file mode 100644
index 0000000..aea6149
--- /dev/null
+++ b/components-starter/camel-aws2-ec2-starter/src/main/docs/aws2-ec2-starter.adoc
@@ -0,0 +1,38 @@
+== aws2-ec2 - Spring Boot Auto-Configuration
+
+When using aws2-ec2 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-ec2-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-ec2.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-ec2.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-ec2.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-ec2.configuration.amazon-ec2-client* | To use a existing configured AmazonEC2Client as client |  | Ec2Client
+| *camel.component.aws2-ec2.configuration.operation* | The operation to perform. It can be createAndRunInstances, startInstances, stopInstances, terminateInstances, describeInstances, describeInstancesStatus, rebootInstances, monitorInstances, unmonitorInstances, createTags or deleteTags |  | AWS2EC2Operations
+| *camel.component.aws2-ec2.configuration.proxy-host* | To define a proxy host when instantiating the EC2 client |  | String
+| *camel.component.aws2-ec2.configuration.proxy-port* | To define a proxy port when instantiating the EC2 client |  | Integer
+| *camel.component.aws2-ec2.configuration.proxy-protocol* | To define a proxy protocol when instantiating the EC2 client |  | Protocol
+| *camel.component.aws2-ec2.configuration.region* | The region in which EC2 client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws2-ec2.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-ec2.enabled* | Whether to enable auto configuration of the aws2-ec2 component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-ec2.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.component.aws2-ec2.region* | The region in which EC2 client needs to work |  | String
+| *camel.component.aws2-ec2.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-ecs-starter/src/main/docs/aws2-ecs-starter.adoc b/components-starter/camel-aws2-ecs-starter/src/main/docs/aws2-ecs-starter.adoc
new file mode 100644
index 0000000..9315c64
--- /dev/null
+++ b/components-starter/camel-aws2-ecs-starter/src/main/docs/aws2-ecs-starter.adoc
@@ -0,0 +1,38 @@
+== aws2-ecs - Spring Boot Auto-Configuration
+
+When using aws2-ecs with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-ecs-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-ecs.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-ecs.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-ecs.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-ecs.configuration.ecs-client* | To use a existing configured AWS ECS as client |  | EcsClient
+| *camel.component.aws2-ecs.configuration.operation* | The operation to perform |  | ECS2Operations
+| *camel.component.aws2-ecs.configuration.proxy-host* | To define a proxy host when instantiating the ECS client |  | String
+| *camel.component.aws2-ecs.configuration.proxy-port* | To define a proxy port when instantiating the ECS client |  | Integer
+| *camel.component.aws2-ecs.configuration.proxy-protocol* | To define a proxy protocol when instantiating the ECS client |  | Protocol
+| *camel.component.aws2-ecs.configuration.region* | The region in which ECS client needs to work. When using this parameter, the configuration will expect the lowercase name of the region (for example ap-east-1) You'll need to use the name Region.EU_WEST_1.id() |  | String
+| *camel.component.aws2-ecs.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-ecs.enabled* | Whether to enable auto configuration of the aws2-ecs component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-ecs.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.component.aws2-ecs.region* | The region in which ECS client needs to work |  | String
+| *camel.component.aws2-ecs.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-eks-starter/src/main/docs/aws2-eks-starter.adoc b/components-starter/camel-aws2-eks-starter/src/main/docs/aws2-eks-starter.adoc
new file mode 100644
index 0000000..8ad2e86
--- /dev/null
+++ b/components-starter/camel-aws2-eks-starter/src/main/docs/aws2-eks-starter.adoc
@@ -0,0 +1,38 @@
+== aws2-eks - Spring Boot Auto-Configuration
+
+When using aws2-eks with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-eks-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-eks.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-eks.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-eks.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-eks.configuration.eks-client* | To use a existing configured AWS EKS as client |  | EksClient
+| *camel.component.aws2-eks.configuration.operation* | The operation to perform |  | EKS2Operations
+| *camel.component.aws2-eks.configuration.proxy-host* | To define a proxy host when instantiating the EKS client |  | String
+| *camel.component.aws2-eks.configuration.proxy-port* | To define a proxy port when instantiating the EKS client |  | Integer
+| *camel.component.aws2-eks.configuration.proxy-protocol* | To define a proxy protocol when instantiating the EKS client |  | Protocol
+| *camel.component.aws2-eks.configuration.region* | The region in which EKS client needs to work. When using this parameter, the configuration will expect the lowercase name of the region (for example ap-east-1) You'll need to use the name Region.EU_WEST_1.id() |  | String
+| *camel.component.aws2-eks.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-eks.enabled* | Whether to enable auto configuration of the aws2-eks component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-eks.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.component.aws2-eks.region* | The region in which EKS client needs to work |  | String
+| *camel.component.aws2-eks.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-iam-starter/src/main/docs/aws2-iam-starter.adoc b/components-starter/camel-aws2-iam-starter/src/main/docs/aws2-iam-starter.adoc
new file mode 100644
index 0000000..fc4f199
--- /dev/null
+++ b/components-starter/camel-aws2-iam-starter/src/main/docs/aws2-iam-starter.adoc
@@ -0,0 +1,38 @@
+== aws2-iam - Spring Boot Auto-Configuration
+
+When using aws2-iam with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-iam-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-iam.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-iam.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-iam.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-iam.configuration.iam-client* | To use a existing configured AWS IAM as client |  | IamClient
+| *camel.component.aws2-iam.configuration.operation* | The operation to perform |  | IAM2Operations
+| *camel.component.aws2-iam.configuration.proxy-host* | To define a proxy host when instantiating the IAM client |  | String
+| *camel.component.aws2-iam.configuration.proxy-port* | To define a proxy port when instantiating the IAM client |  | Integer
+| *camel.component.aws2-iam.configuration.proxy-protocol* | To define a proxy protocol when instantiating the IAM client |  | Protocol
+| *camel.component.aws2-iam.configuration.region* | The region in which IAM client needs to work. When using this parameter, the configuration will expect the capitalized name of the region (for example AP_EAST_1) You'll need to use the name Regions.EU_WEST_1.name() |  | String
+| *camel.component.aws2-iam.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-iam.enabled* | Whether to enable auto configuration of the aws2-iam component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-iam.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.component.aws2-iam.region* | The region in which IAM client needs to work |  | String
+| *camel.component.aws2-iam.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-kms-starter/src/main/docs/aws2-kms-starter.adoc b/components-starter/camel-aws2-kms-starter/src/main/docs/aws2-kms-starter.adoc
new file mode 100644
index 0000000..3e0c869
--- /dev/null
+++ b/components-starter/camel-aws2-kms-starter/src/main/docs/aws2-kms-starter.adoc
@@ -0,0 +1,38 @@
+== aws2-kms - Spring Boot Auto-Configuration
+
+When using aws2-kms with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-kms-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-kms.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-kms.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-kms.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-kms.configuration.kms-client* | To use a existing configured AWS KMS as client |  | KmsClient
+| *camel.component.aws2-kms.configuration.operation* | The operation to perform |  | KMS2Operations
+| *camel.component.aws2-kms.configuration.proxy-host* | To define a proxy host when instantiating the KMS client |  | String
+| *camel.component.aws2-kms.configuration.proxy-port* | To define a proxy port when instantiating the KMS client |  | Integer
+| *camel.component.aws2-kms.configuration.proxy-protocol* | To define a proxy protocol when instantiating the KMS client |  | Protocol
+| *camel.component.aws2-kms.configuration.region* | The region in which EKS client needs to work. When using this parameter, the configuration will expect the lowercase name of the region (for example ap-east-1) You'll need to use the name Region.EU_WEST_1.id() |  | String
+| *camel.component.aws2-kms.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-kms.enabled* | Whether to enable auto configuration of the aws2-kms component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-kms.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.component.aws2-kms.region* | The region in which KMS client needs to work |  | String
+| *camel.component.aws2-kms.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-mq-starter/src/main/docs/aws2-mq-starter.adoc b/components-starter/camel-aws2-mq-starter/src/main/docs/aws2-mq-starter.adoc
new file mode 100644
index 0000000..a4bf5b3
--- /dev/null
+++ b/components-starter/camel-aws2-mq-starter/src/main/docs/aws2-mq-starter.adoc
@@ -0,0 +1,38 @@
+== aws2-mq - Spring Boot Auto-Configuration
+
+When using aws2-mq with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-mq-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-mq.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-mq.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-mq.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-mq.configuration.amazon-mq-client* | To use a existing configured AmazonMQClient as client |  | MqClient
+| *camel.component.aws2-mq.configuration.operation* | The operation to perform. It can be listBrokers,createBroker,deleteBroker |  | MQ2Operations
+| *camel.component.aws2-mq.configuration.proxy-host* | To define a proxy host when instantiating the MQ client |  | String
+| *camel.component.aws2-mq.configuration.proxy-port* | To define a proxy port when instantiating the MQ client |  | Integer
+| *camel.component.aws2-mq.configuration.proxy-protocol* | To define a proxy protocol when instantiating the MQ client |  | Protocol
+| *camel.component.aws2-mq.configuration.region* | The region in which MQ client needs to work. When using this parameter, the configuration will expect the lowercase name of the region (for example ap-east-1) You'll need to use the name Region.EU_WEST_1.id() |  | String
+| *camel.component.aws2-mq.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-mq.enabled* | Whether to enable auto configuration of the aws2-mq component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-mq.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.aws2-mq.region* | The region in which MQ client needs to work |  | String
+| *camel.component.aws2-mq.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-msk-starter/src/main/docs/aws2-msk-starter.adoc b/components-starter/camel-aws2-msk-starter/src/main/docs/aws2-msk-starter.adoc
new file mode 100644
index 0000000..f7d4ff5
--- /dev/null
+++ b/components-starter/camel-aws2-msk-starter/src/main/docs/aws2-msk-starter.adoc
@@ -0,0 +1,38 @@
+== aws2-msk - Spring Boot Auto-Configuration
+
+When using aws2-msk with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-msk-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-msk.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-msk.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-msk.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-msk.configuration.msk-client* | To use a existing configured AWS MSK as client |  | KafkaClient
+| *camel.component.aws2-msk.configuration.operation* | The operation to perform |  | MSK2Operations
+| *camel.component.aws2-msk.configuration.proxy-host* | To define a proxy host when instantiating the MSK client |  | String
+| *camel.component.aws2-msk.configuration.proxy-port* | To define a proxy port when instantiating the MSK client |  | Integer
+| *camel.component.aws2-msk.configuration.proxy-protocol* | To define a proxy protocol when instantiating the MSK client |  | Protocol
+| *camel.component.aws2-msk.configuration.region* | The region in which MSK client needs to work. When using this parameter, the configuration will expect the lowercase name of the region (for example ap-east-1) You'll need to use the name Region.EU_WEST_1.id() |  | String
+| *camel.component.aws2-msk.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-msk.enabled* | Whether to enable auto configuration of the aws2-msk component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-msk.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.component.aws2-msk.region* | The region in which MSK client needs to work |  | String
+| *camel.component.aws2-msk.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-aws2-translate-starter/src/main/docs/aws2-translate-starter.adoc b/components-starter/camel-aws2-translate-starter/src/main/docs/aws2-translate-starter.adoc
new file mode 100644
index 0000000..6220889
--- /dev/null
+++ b/components-starter/camel-aws2-translate-starter/src/main/docs/aws2-translate-starter.adoc
@@ -0,0 +1,41 @@
+== aws2-translate - Spring Boot Auto-Configuration
+
+When using aws2-translate with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-aws2-translate-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 17 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.aws2-translate.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-translate.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.aws2-translate.configuration.access-key* | Amazon AWS Access Key |  | String
+| *camel.component.aws2-translate.configuration.autodetect-source-language* | Being able to autodetect the source language | false | Boolean
+| *camel.component.aws2-translate.configuration.operation* | The operation to perform |  | Translate2Operations
+| *camel.component.aws2-translate.configuration.proxy-host* | To define a proxy host when instantiating the Translate client |  | String
+| *camel.component.aws2-translate.configuration.proxy-port* | To define a proxy port when instantiating the Translate client |  | Integer
+| *camel.component.aws2-translate.configuration.proxy-protocol* | To define a proxy protocol when instantiating the Translate client |  | Protocol
+| *camel.component.aws2-translate.configuration.region* | The region in which Translate client needs to work. When using this parameter, the configuration will expect the lowercase name of the region (for example ap-east-1) You'll need to use the name Region.EU_WEST_1.id() |  | String
+| *camel.component.aws2-translate.configuration.secret-key* | Amazon AWS Secret Key |  | String
+| *camel.component.aws2-translate.configuration.source-language* | Source language to use |  | String
+| *camel.component.aws2-translate.configuration.target-language* | Target language to use |  | String
+| *camel.component.aws2-translate.configuration.translate-client* | To use a existing configured AWS Translate as client |  | TranslateClient
+| *camel.component.aws2-translate.enabled* | Whether to enable auto configuration of the aws2-translate component. This is enabled by default. |  | Boolean
+| *camel.component.aws2-translate.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.aws2-translate.region* | The region in which Translate client needs to work |  | String
+| *camel.component.aws2-translate.secret-key* | Amazon AWS Secret Key |  | String
+|===
+
diff --git a/components-starter/camel-azure-starter/src/main/docs/azure-starter.adoc b/components-starter/camel-azure-starter/src/main/docs/azure-starter.adoc
new file mode 100644
index 0000000..502a910
--- /dev/null
+++ b/components-starter/camel-azure-starter/src/main/docs/azure-starter.adoc
@@ -0,0 +1,58 @@
+== azure - Spring Boot Auto-Configuration
+
+When using azure with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-azure-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 34 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.azure-blob.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.azure-blob.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.azure-blob.configuration.account-name* |  |  | String
+| *camel.component.azure-blob.configuration.azure-blob-client* | The blob service client |  | CloudBlob
+| *camel.component.azure-blob.configuration.blob-metadata* | Set the blob meta-data |  | Map
+| *camel.component.azure-blob.configuration.blob-name* |  |  | String
+| *camel.component.azure-blob.configuration.blob-offset* | Set the blob offset for the upload or download operations, default is 0 | 0 | Long
+| *camel.component.azure-blob.configuration.blob-prefix* | Set a prefix which can be used for listing the blobs |  | String
+| *camel.component.azure-blob.configuration.blob-type* | Set a blob type, 'blockblob' is default |  | BlobType
+| *camel.component.azure-blob.configuration.close-stream-after-read* | Close the stream after read or keep it open, default is true | true | Boolean
+| *camel.component.azure-blob.configuration.close-stream-after-write* | Close the stream after write or keep it open, default is true | true | Boolean
+| *camel.component.azure-blob.configuration.container-name* |  |  | String
+| *camel.component.azure-blob.configuration.credentials* | Set the storage credentials, required in most cases |  | StorageCredentials
+| *camel.component.azure-blob.configuration.data-length* | Set the data length for the download or page blob upload operations |  | Long
+| *camel.component.azure-blob.configuration.file-dir* | Set the file directory where the downloaded blobs will be saved to |  | String
+| *camel.component.azure-blob.configuration.operation* | Blob service operation hint to the producer |  | BlobServiceOperations
+| *camel.component.azure-blob.configuration.public-for-read* | Storage resources can be public for reading their content, if this property is enabled then the credentials do not have to be set | false | Boolean
+| *camel.component.azure-blob.configuration.stream-read-size* | Set the minimum read size in bytes when reading the blob content |  | Integer
+| *camel.component.azure-blob.configuration.stream-write-size* | Set the size of the buffer for writing block and page blocks |  | Integer
+| *camel.component.azure-blob.configuration.use-flat-listing* | Specify if the flat or hierarchical blob listing should be used | true | Boolean
+| *camel.component.azure-blob.enabled* | Whether to enable auto configuration of the azure-blob component. This is enabled by default. |  | Boolean
+| *camel.component.azure-blob.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+| *camel.component.azure-queue.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.azure-queue.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.azure-queue.configuration.account-name* |  |  | String
+| *camel.component.azure-queue.configuration.azure-queue-client* | The queue service client |  | CloudQueue
+| *camel.component.azure-queue.configuration.credentials* | Set the storage credentials, required in most cases |  | StorageCredentials
+| *camel.component.azure-queue.configuration.message-time-to-live* | Message Time To Live in seconds |  | Integer
+| *camel.component.azure-queue.configuration.message-visibility-delay* | Message Visibility Delay in seconds |  | Integer
+| *camel.component.azure-queue.configuration.operation* | Queue service operation hint to the producer |  | QueueServiceOperations
+| *camel.component.azure-queue.configuration.queue-name* |  |  | String
+| *camel.component.azure-queue.configuration.queue-prefix* | Set a prefix which can be used for listing the queues |  | String
+| *camel.component.azure-queue.enabled* | Whether to enable auto configuration of the azure-queue component. This is enabled by default. |  | Boolean
+| *camel.component.azure-queue.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processe [...]
+|===
+
diff --git a/components-starter/camel-barcode-starter/src/main/docs/barcode-starter.adoc b/components-starter/camel-barcode-starter/src/main/docs/barcode-starter.adoc
new file mode 100644
index 0000000..351768b
--- /dev/null
+++ b/components-starter/camel-barcode-starter/src/main/docs/barcode-starter.adoc
@@ -0,0 +1,30 @@
+== barcode - Spring Boot Auto-Configuration
+
+When using barcode with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-barcode-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.barcode.barcode-format* | Barcode format such as QR-Code |  | String
+| *camel.dataformat.barcode.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.barcode.enabled* | Whether to enable auto configuration of the barcode data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.barcode.height* | Height of the barcode |  | Integer
+| *camel.dataformat.barcode.image-type* | Image type of the barcode such as png |  | String
+| *camel.dataformat.barcode.width* | Width of the barcode |  | Integer
+|===
+
diff --git a/components-starter/camel-base64-starter/src/main/docs/base64-starter.adoc b/components-starter/camel-base64-starter/src/main/docs/base64-starter.adoc
new file mode 100644
index 0000000..f35858e
--- /dev/null
+++ b/components-starter/camel-base64-starter/src/main/docs/base64-starter.adoc
@@ -0,0 +1,29 @@
+== base64 - Spring Boot Auto-Configuration
+
+When using base64 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-base64-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.base64.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.base64.enabled* | Whether to enable auto configuration of the base64 data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.base64.line-length* | To specific a maximum line length for the encoded data. By default 76 is used. | 76 | Integer
+| *camel.dataformat.base64.line-separator* | The line separators to use. Uses new line characters (CRLF) by default. |  | String
+| *camel.dataformat.base64.url-safe* | Instead of emitting '' and '/' we emit '-' and '_' respectively. urlSafe is only applied to encode operations. Decoding seamlessly handles both modes. Is by default false. | false | Boolean
+|===
+
diff --git a/components-starter/camel-bean-starter/src/main/docs/bean-starter.adoc b/components-starter/camel-bean-starter/src/main/docs/bean-starter.adoc
new file mode 100644
index 0000000..24d27c3
--- /dev/null
+++ b/components-starter/camel-bean-starter/src/main/docs/bean-starter.adoc
@@ -0,0 +1,36 @@
+== bean - Spring Boot Auto-Configuration
+
+When using bean with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-bean-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 12 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.bean.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.bean.enabled* | Whether to enable auto configuration of the bean component. This is enabled by default. |  | Boolean
+| *camel.component.bean.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.bean.scope* | Scope of bean. When using singleton scope (default) the bean is created or looked up only once and reused for the lifetime of the endpoint. The bean should be thread-safe in case concurrent threads is calling the bean at the same time. When using request scope the bean is created or looked up once per request (exchange). This can be used if you want to store state on a bean while processing a request and you want to call the same bean instance multiple ti [...]
+| *camel.component.class.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.class.enabled* | Whether to enable auto configuration of the class component. This is enabled by default. |  | Boolean
+| *camel.component.class.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+| *camel.component.class.scope* | Scope of bean. When using singleton scope (default) the bean is created or looked up only once and reused for the lifetime of the endpoint. The bean should be thread-safe in case concurrent threads is calling the bean at the same time. When using request scope the bean is created or looked up once per request (exchange). This can be used if you want to store state on a bean while processing a request and you want to call the same bean instance multiple t [...]
+| *camel.language.bean.enabled* | Whether to enable auto configuration of the bean language. This is enabled by default. |  | Boolean
+| *camel.language.bean.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.component.bean.cache* | *Deprecated* Use singleton option instead. | true | Boolean
+| *camel.component.class.cache* | *Deprecated* Use singleton option instead. | true | Boolean
+|===
+
diff --git a/components-starter/camel-bean-validator-starter/src/main/docs/bean-validator-starter.adoc b/components-starter/camel-bean-validator-starter/src/main/docs/bean-validator-starter.adoc
new file mode 100644
index 0000000..576f061
--- /dev/null
+++ b/components-starter/camel-bean-validator-starter/src/main/docs/bean-validator-starter.adoc
@@ -0,0 +1,32 @@
+== bean-validator - Spring Boot Auto-Configuration
+
+When using bean-validator with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-bean-validator-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 8 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.bean-validator.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.bean-validator.constraint-validator-factory* | To use a custom ConstraintValidatorFactory. The option is a javax.validation.ConstraintValidatorFactory type. |  | String
+| *camel.component.bean-validator.enabled* | Whether to enable auto configuration of the bean-validator component. This is enabled by default. |  | Boolean
+| *camel.component.bean-validator.ignore-xml-configuration* | Whether to ignore data from the META-INF/validation.xml file. | false | Boolean
+| *camel.component.bean-validator.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.bean-validator.message-interpolator* | To use a custom MessageInterpolator. The option is a javax.validation.MessageInterpolator type. |  | String
+| *camel.component.bean-validator.traversable-resolver* | To use a custom TraversableResolver. The option is a javax.validation.TraversableResolver type. |  | String
+| *camel.component.bean-validator.validation-provider-resolver* | To use a a custom ValidationProviderResolver. The option is a javax.validation.ValidationProviderResolver type. |  | String
+|===
+
diff --git a/components-starter/camel-beanio-starter/src/main/docs/beanio-starter.adoc b/components-starter/camel-beanio-starter/src/main/docs/beanio-starter.adoc
new file mode 100644
index 0000000..7670c29
--- /dev/null
+++ b/components-starter/camel-beanio-starter/src/main/docs/beanio-starter.adoc
@@ -0,0 +1,34 @@
+== beanio - Spring Boot Auto-Configuration
+
+When using beanio with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-beanio-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 10 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.beanio.bean-reader-error-handler-type* | To use a custom org.apache.camel.dataformat.beanio.BeanIOErrorHandler as error handler while parsing. Configure the fully qualified class name of the error handler. Notice the options ignoreUnidentifiedRecords, ignoreUnexpectedRecords, and ignoreInvalidRecords may not be in use when you use a custom error handler. |  | String
+| *camel.dataformat.beanio.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.beanio.enabled* | Whether to enable auto configuration of the beanio data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.beanio.encoding* | The charset to use. Is by default the JVM platform default charset. |  | String
+| *camel.dataformat.beanio.ignore-invalid-records* | Whether to ignore invalid records. | false | Boolean
+| *camel.dataformat.beanio.ignore-unexpected-records* | Whether to ignore unexpected records. | false | Boolean
+| *camel.dataformat.beanio.ignore-unidentified-records* | Whether to ignore unidentified records. | false | Boolean
+| *camel.dataformat.beanio.mapping* | The BeanIO mapping file. Is by default loaded from the classpath. You can prefix with file:, http:, or classpath: to denote from where to load the mapping file. |  | String
+| *camel.dataformat.beanio.stream-name* | The name of the stream to use. |  | String
+| *camel.dataformat.beanio.unmarshal-single-object* | This options controls whether to unmarshal as a list of objects or as a single object only. The former is the default mode, and the latter is only intended in special use-cases where beanio maps the Camel message to a single POJO bean. | false | Boolean
+|===
+
diff --git a/components-starter/camel-beanstalk-starter/src/main/docs/beanstalk-starter.adoc b/components-starter/camel-beanstalk-starter/src/main/docs/beanstalk-starter.adoc
new file mode 100644
index 0000000..d6410ef
--- /dev/null
+++ b/components-starter/camel-beanstalk-starter/src/main/docs/beanstalk-starter.adoc
@@ -0,0 +1,29 @@
+== beanstalk - Spring Boot Auto-Configuration
+
+When using beanstalk with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-beanstalk-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.beanstalk.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.beanstalk.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.beanstalk.connection-settings-factory* | Custom ConnectionSettingsFactory. Specify which ConnectionSettingsFactory to use to make connections to Beanstalkd. Especially useful for unit testing without beanstalkd daemon (you can mock ConnectionSettings). The option is a org.apache.camel.component.beanstalk.ConnectionSettingsFactory type. |  | String
+| *camel.component.beanstalk.enabled* | Whether to enable auto configuration of the beanstalk component. This is enabled by default. |  | Boolean
+| *camel.component.beanstalk.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed  [...]
+|===
+
diff --git a/components-starter/camel-bindy-starter/src/main/docs/bindy-starter.adoc b/components-starter/camel-bindy-starter/src/main/docs/bindy-starter.adoc
new file mode 100644
index 0000000..c24440e
--- /dev/null
+++ b/components-starter/camel-bindy-starter/src/main/docs/bindy-starter.adoc
@@ -0,0 +1,45 @@
+== bindy - Spring Boot Auto-Configuration
+
+When using bindy with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-bindy-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 21 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.bindy-csv.allow-empty-stream* | Whether to allow empty streams in the unmarshal process. If true, no exception will be thrown when a body without records is provided. | false | Boolean
+| *camel.dataformat.bindy-csv.class-type* | Name of model class to use. |  | String
+| *camel.dataformat.bindy-csv.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.bindy-csv.enabled* | Whether to enable auto configuration of the bindy-csv data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.bindy-csv.locale* | To configure a default locale to use, such as us for united states. To use the JVM platform default locale then use the name default |  | String
+| *camel.dataformat.bindy-csv.type* | Whether to use Csv, Fixed, or KeyValue. |  | String
+| *camel.dataformat.bindy-csv.unwrap-single-instance* | When unmarshalling should a single instance be unwrapped and returned instead of wrapped in a java.util.List. | true | Boolean
+| *camel.dataformat.bindy-fixed.allow-empty-stream* | Whether to allow empty streams in the unmarshal process. If true, no exception will be thrown when a body without records is provided. | false | Boolean
+| *camel.dataformat.bindy-fixed.class-type* | Name of model class to use. |  | String
+| *camel.dataformat.bindy-fixed.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.bindy-fixed.enabled* | Whether to enable auto configuration of the bindy-fixed data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.bindy-fixed.locale* | To configure a default locale to use, such as us for united states. To use the JVM platform default locale then use the name default |  | String
+| *camel.dataformat.bindy-fixed.type* | Whether to use Csv, Fixed, or KeyValue. |  | String
+| *camel.dataformat.bindy-fixed.unwrap-single-instance* | When unmarshalling should a single instance be unwrapped and returned instead of wrapped in a java.util.List. | true | Boolean
+| *camel.dataformat.bindy-kvp.allow-empty-stream* | Whether to allow empty streams in the unmarshal process. If true, no exception will be thrown when a body without records is provided. | false | Boolean
+| *camel.dataformat.bindy-kvp.class-type* | Name of model class to use. |  | String
+| *camel.dataformat.bindy-kvp.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.bindy-kvp.enabled* | Whether to enable auto configuration of the bindy-kvp data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.bindy-kvp.locale* | To configure a default locale to use, such as us for united states. To use the JVM platform default locale then use the name default |  | String
+| *camel.dataformat.bindy-kvp.type* | Whether to use Csv, Fixed, or KeyValue. |  | String
+| *camel.dataformat.bindy-kvp.unwrap-single-instance* | When unmarshalling should a single instance be unwrapped and returned instead of wrapped in a java.util.List. | true | Boolean
+|===
+
diff --git a/components-starter/camel-bonita-starter/src/main/docs/bonita-starter.adoc b/components-starter/camel-bonita-starter/src/main/docs/bonita-starter.adoc
new file mode 100644
index 0000000..baa087b
--- /dev/null
+++ b/components-starter/camel-bonita-starter/src/main/docs/bonita-starter.adoc
@@ -0,0 +1,27 @@
+== bonita - Spring Boot Auto-Configuration
+
+When using bonita with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-bonita-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.bonita.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.bonita.enabled* | Whether to enable auto configuration of the bonita component. This is enabled by default. |  | Boolean
+| *camel.component.bonita.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-box-starter/src/main/docs/box-starter.adoc b/components-starter/camel-box-starter/src/main/docs/box-starter.adoc
new file mode 100644
index 0000000..56ca7b9
--- /dev/null
+++ b/components-starter/camel-box-starter/src/main/docs/box-starter.adoc
@@ -0,0 +1,45 @@
+== box - Spring Boot Auto-Configuration
+
+When using box with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-box-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 21 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.box.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.box.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.box.configuration.access-token-cache* | Custom Access Token Cache for storing and retrieving access tokens. |  | IAccessTokenCache
+| *camel.component.box.configuration.api-name* | What kind of operation to perform |  | BoxApiName
+| *camel.component.box.configuration.authentication-type* | The type of authentication for connection. Types of Authentication: STANDARD_AUTHENTICATION - OAuth 2.0 (3-legged) SERVER_AUTHENTICATION - OAuth 2.0 with JSON Web Tokens | APP_USER_AUTHENTICATION | String
+| *camel.component.box.configuration.client-id* | Box application client ID |  | String
+| *camel.component.box.configuration.client-secret* | Box application client secret |  | String
+| *camel.component.box.configuration.encryption-algorithm* | The type of encryption algorithm for JWT. Supported Algorithms: RSA_SHA_256 RSA_SHA_384 RSA_SHA_512 |  | EncryptionAlgorithm
+| *camel.component.box.configuration.enterprise-id* | The enterprise ID to use for an App Enterprise. |  | String
+| *camel.component.box.configuration.http-params* | Custom HTTP params for settings like proxy host |  | Map
+| *camel.component.box.configuration.max-cache-entries* | The maximum number of access tokens in cache. | 100 | Integer
+| *camel.component.box.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.box.configuration.private-key-file* | The private key for generating the JWT signature. |  | String
+| *camel.component.box.configuration.private-key-password* | The password for the private key. |  | String
+| *camel.component.box.configuration.public-key-id* | The ID for public key for validating the JWT signature. |  | String
+| *camel.component.box.configuration.ssl-context-parameters* | To configure security using SSLContextParameters. |  | SSLContextParameters
+| *camel.component.box.configuration.user-id* | The user ID to use for an App User. |  | String
+| *camel.component.box.configuration.user-name* | Box user name, MUST be provided |  | String
+| *camel.component.box.configuration.user-password* | Box user password, MUST be provided if authSecureStorage is not set, or returns null on first call |  | String
+| *camel.component.box.enabled* | Whether to enable auto configuration of the box component. This is enabled by default. |  | Boolean
+| *camel.component.box.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-braintree-starter/src/main/docs/braintree-starter.adoc b/components-starter/camel-braintree-starter/src/main/docs/braintree-starter.adoc
new file mode 100644
index 0000000..9b0dfc7
--- /dev/null
+++ b/components-starter/camel-braintree-starter/src/main/docs/braintree-starter.adoc
@@ -0,0 +1,42 @@
+== braintree - Spring Boot Auto-Configuration
+
+When using braintree with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-braintree-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 18 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.braintree.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.braintree.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.braintree.configuration.access-token* | The access token granted by a merchant to another in order to process transactions on their behalf. Used in place of environment, merchant id, public key and private key fields. |  | String
+| *camel.component.braintree.configuration.api-name* | What kind of operation to perform |  | BraintreeApiName
+| *camel.component.braintree.configuration.environment* | The environment Either SANDBOX or PRODUCTION |  | String
+| *camel.component.braintree.configuration.http-log-level* | Set logging level for http calls, see java.util.logging.Level |  | Level
+| *camel.component.braintree.configuration.http-log-name* |  |  | String
+| *camel.component.braintree.configuration.http-read-timeout* | Set read timeout for http calls. |  | Integer
+| *camel.component.braintree.configuration.log-handler-enabled* | Sets whether to enable the BraintreeLogHandler. It may be desirable to set this to 'false' where an existing JUL - SLF4J logger bridge is on the classpath. This option can also be configured globally on the BraintreeComponent. | true | Boolean
+| *camel.component.braintree.configuration.merchant-id* | The merchant id provided by Braintree. |  | String
+| *camel.component.braintree.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.braintree.configuration.private-key* | The private key provided by Braintree. |  | String
+| *camel.component.braintree.configuration.proxy-host* | The proxy host |  | String
+| *camel.component.braintree.configuration.proxy-port* | The proxy port |  | Integer
+| *camel.component.braintree.configuration.public-key* | The public key provided by Braintree. |  | String
+| *camel.component.braintree.enabled* | Whether to enable auto configuration of the braintree component. This is enabled by default. |  | Boolean
+| *camel.component.braintree.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed  [...]
+| *camel.component.braintree.log-handler-enabled* | Sets whether to enable the BraintreeLogHandler. It may be desirable to set this to 'false' where an existing JUL - SLF4J logger bridge is on the classpath. | true | Boolean
+|===
+
diff --git a/components-starter/camel-browse-starter/src/main/docs/browse-starter.adoc b/components-starter/camel-browse-starter/src/main/docs/browse-starter.adoc
new file mode 100644
index 0000000..c135e36
--- /dev/null
+++ b/components-starter/camel-browse-starter/src/main/docs/browse-starter.adoc
@@ -0,0 +1,28 @@
+== browse - Spring Boot Auto-Configuration
+
+When using browse with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-browse-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.browse.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.browse.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.browse.enabled* | Whether to enable auto configuration of the browse component. This is enabled by default. |  | Boolean
+| *camel.component.browse.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-caffeine-starter/src/main/docs/caffeine-starter.adoc b/components-starter/camel-caffeine-starter/src/main/docs/caffeine-starter.adoc
new file mode 100644
index 0000000..922411a
--- /dev/null
+++ b/components-starter/camel-caffeine-starter/src/main/docs/caffeine-starter.adoc
@@ -0,0 +1,60 @@
+== caffeine - Spring Boot Auto-Configuration
+
+When using caffeine with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-caffeine-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 36 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.caffeine-cache.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.caffeine-cache.configuration.action* | To configure the default cache action. If an action is set in the message header, then the operation from the header takes precedence. |  | String
+| *camel.component.caffeine-cache.configuration.cache* | To configure an already instantiated cache to be used |  | Cache
+| *camel.component.caffeine-cache.configuration.cache-loader* | To configure a CacheLoader in case of a LoadCache use |  | CacheLoader
+| *camel.component.caffeine-cache.configuration.create-cache-if-not-exist* | Configure if a cache need to be created if it does exist or can't be pre-configured. | true | Boolean
+| *camel.component.caffeine-cache.configuration.eviction-type* | Set the eviction Type for this cache |  | EvictionType
+| *camel.component.caffeine-cache.configuration.expire-after-access-time* | Set the expire After Access Time in case of time based Eviction (in seconds) | 300 | Integer
+| *camel.component.caffeine-cache.configuration.expire-after-write-time* | Set the expire After Access Write in case of time based Eviction (in seconds) | 300 | Integer
+| *camel.component.caffeine-cache.configuration.initial-capacity* | Set the initial Capacity for the cache | 10000 | Integer
+| *camel.component.caffeine-cache.configuration.key* | To configure the default action key. If a key is set in the message header, then the key from the header takes precedence. |  | Object
+| *camel.component.caffeine-cache.configuration.key-type* | The cache key type, default java.lang.Object |  | String
+| *camel.component.caffeine-cache.configuration.maximum-size* | Set the maximum size for the cache | 10000 | Integer
+| *camel.component.caffeine-cache.configuration.removal-listener* | Set a specific removal Listener for the cache |  | RemovalListener
+| *camel.component.caffeine-cache.configuration.stats-counter* | Set a specific Stats Counter for the cache stats |  | StatsCounter
+| *camel.component.caffeine-cache.configuration.stats-enabled* | To enable stats on the cache | false | Boolean
+| *camel.component.caffeine-cache.configuration.value-type* | The cache value type, default java.lang.Object |  | String
+| *camel.component.caffeine-cache.enabled* | Whether to enable auto configuration of the caffeine-cache component. This is enabled by default. |  | Boolean
+| *camel.component.caffeine-cache.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.caffeine-loadcache.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.caffeine-loadcache.configuration.action* | To configure the default cache action. If an action is set in the message header, then the operation from the header takes precedence. |  | String
+| *camel.component.caffeine-loadcache.configuration.cache* | To configure an already instantiated cache to be used |  | Cache
+| *camel.component.caffeine-loadcache.configuration.cache-loader* | To configure a CacheLoader in case of a LoadCache use |  | CacheLoader
+| *camel.component.caffeine-loadcache.configuration.create-cache-if-not-exist* | Configure if a cache need to be created if it does exist or can't be pre-configured. | true | Boolean
+| *camel.component.caffeine-loadcache.configuration.eviction-type* | Set the eviction Type for this cache |  | EvictionType
+| *camel.component.caffeine-loadcache.configuration.expire-after-access-time* | Set the expire After Access Time in case of time based Eviction (in seconds) | 300 | Integer
+| *camel.component.caffeine-loadcache.configuration.expire-after-write-time* | Set the expire After Access Write in case of time based Eviction (in seconds) | 300 | Integer
+| *camel.component.caffeine-loadcache.configuration.initial-capacity* | Set the initial Capacity for the cache | 10000 | Integer
+| *camel.component.caffeine-loadcache.configuration.key* | To configure the default action key. If a key is set in the message header, then the key from the header takes precedence. |  | Object
+| *camel.component.caffeine-loadcache.configuration.key-type* | The cache key type, default java.lang.Object |  | String
+| *camel.component.caffeine-loadcache.configuration.maximum-size* | Set the maximum size for the cache | 10000 | Integer
+| *camel.component.caffeine-loadcache.configuration.removal-listener* | Set a specific removal Listener for the cache |  | RemovalListener
+| *camel.component.caffeine-loadcache.configuration.stats-counter* | Set a specific Stats Counter for the cache stats |  | StatsCounter
+| *camel.component.caffeine-loadcache.configuration.stats-enabled* | To enable stats on the cache | false | Boolean
+| *camel.component.caffeine-loadcache.configuration.value-type* | The cache value type, default java.lang.Object |  | String
+| *camel.component.caffeine-loadcache.enabled* | Whether to enable auto configuration of the caffeine-loadcache component. This is enabled by default. |  | Boolean
+| *camel.component.caffeine-loadcache.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is p [...]
+|===
+
diff --git a/components-starter/camel-cassandraql-starter/src/main/docs/cassandraql-starter.adoc b/components-starter/camel-cassandraql-starter/src/main/docs/cassandraql-starter.adoc
new file mode 100644
index 0000000..ec7ec35
--- /dev/null
+++ b/components-starter/camel-cassandraql-starter/src/main/docs/cassandraql-starter.adoc
@@ -0,0 +1,28 @@
+== cassandraql - Spring Boot Auto-Configuration
+
+When using cassandraql with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-cassandraql-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.cql.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.cql.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.cql.enabled* | Whether to enable auto configuration of the cql component. This is enabled by default. |  | Boolean
+| *camel.component.cql.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-cbor-starter/src/main/docs/cbor-starter.adoc b/components-starter/camel-cbor-starter/src/main/docs/cbor-starter.adoc
new file mode 100644
index 0000000..9eef9a4
--- /dev/null
+++ b/components-starter/camel-cbor-starter/src/main/docs/cbor-starter.adoc
@@ -0,0 +1,36 @@
+== cbor - Spring Boot Auto-Configuration
+
+When using cbor with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-cbor-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 12 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.cbor.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.cbor.allow-unmarshall-type* | If enabled then Jackson CBOR is allowed to attempt to use the CamelCBORUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.cbor.collection-type-name* | Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default. |  | String
+| *camel.dataformat.cbor.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.cbor.disable-features* | Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.cbor.enable-features* | Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.cbor.enabled* | Whether to enable auto configuration of the cbor data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.cbor.object-mapper* | Lookup and use the existing CBOR ObjectMapper with the given id when using Jackson. |  | String
+| *camel.dataformat.cbor.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.cbor.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.cbor.use-default-object-mapper* | Whether to lookup and use default Jackson CBOR ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.cbor.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+
diff --git a/components-starter/camel-chatscript-starter/src/main/docs/chatscript-starter.adoc b/components-starter/camel-chatscript-starter/src/main/docs/chatscript-starter.adoc
new file mode 100644
index 0000000..0ab92cd
--- /dev/null
+++ b/components-starter/camel-chatscript-starter/src/main/docs/chatscript-starter.adoc
@@ -0,0 +1,27 @@
+== chatscript - Spring Boot Auto-Configuration
+
+When using chatscript with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-chatscript-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.chatscript.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.chatscript.enabled* | Whether to enable auto configuration of the chatscript component. This is enabled by default. |  | Boolean
+| *camel.component.chatscript.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+|===
+
diff --git a/components-starter/camel-chunk-starter/src/main/docs/chunk-starter.adoc b/components-starter/camel-chunk-starter/src/main/docs/chunk-starter.adoc
new file mode 100644
index 0000000..1f43201
--- /dev/null
+++ b/components-starter/camel-chunk-starter/src/main/docs/chunk-starter.adoc
@@ -0,0 +1,27 @@
+== chunk - Spring Boot Auto-Configuration
+
+When using chunk with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-chunk-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.chunk.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.chunk.enabled* | Whether to enable auto configuration of the chunk component. This is enabled by default. |  | Boolean
+| *camel.component.chunk.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+|===
+
diff --git a/components-starter/camel-cm-sms-starter/src/main/docs/cm-sms-starter.adoc b/components-starter/camel-cm-sms-starter/src/main/docs/cm-sms-starter.adoc
new file mode 100644
index 0000000..fc28478
--- /dev/null
+++ b/components-starter/camel-cm-sms-starter/src/main/docs/cm-sms-starter.adoc
@@ -0,0 +1,27 @@
+== cm-sms - Spring Boot Auto-Configuration
+
+When using cm-sms with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-cm-sms-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.cm-sms.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.cm-sms.enabled* | Whether to enable auto configuration of the cm-sms component. This is enabled by default. |  | Boolean
+| *camel.component.cm-sms.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-cmis-starter/src/main/docs/cmis-starter.adoc b/components-starter/camel-cmis-starter/src/main/docs/cmis-starter.adoc
new file mode 100644
index 0000000..7126b29
--- /dev/null
+++ b/components-starter/camel-cmis-starter/src/main/docs/cmis-starter.adoc
@@ -0,0 +1,29 @@
+== cmis - Spring Boot Auto-Configuration
+
+When using cmis with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-cmis-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.cmis.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.cmis.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.cmis.enabled* | Whether to enable auto configuration of the cmis component. This is enabled by default. |  | Boolean
+| *camel.component.cmis.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.cmis.session-facade-factory* | To use a custom CMISSessionFacadeFactory to create the CMISSessionFacade instances. The option is a org.apache.camel.component.cmis.CMISSessionFacadeFactory type. |  | String
+|===
+
diff --git a/components-starter/camel-coap-starter/src/main/docs/coap-starter.adoc b/components-starter/camel-coap-starter/src/main/docs/coap-starter.adoc
new file mode 100644
index 0000000..57687c3
--- /dev/null
+++ b/components-starter/camel-coap-starter/src/main/docs/coap-starter.adoc
@@ -0,0 +1,28 @@
+== coap - Spring Boot Auto-Configuration
+
+When using coap with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-coap-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.coap.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.coap.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.coap.enabled* | Whether to enable auto configuration of the coap component. This is enabled by default. |  | Boolean
+| *camel.component.coap.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-cometd-starter/src/main/docs/cometd-starter.adoc b/components-starter/camel-cometd-starter/src/main/docs/cometd-starter.adoc
new file mode 100644
index 0000000..03418b2
--- /dev/null
+++ b/components-starter/camel-cometd-starter/src/main/docs/cometd-starter.adoc
@@ -0,0 +1,35 @@
+== cometd - Spring Boot Auto-Configuration
+
+When using cometd with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-cometd-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 11 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.cometd.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.cometd.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.cometd.enabled* | Whether to enable auto configuration of the cometd component. This is enabled by default. |  | Boolean
+| *camel.component.cometd.extensions* | To use a list of custom BayeuxServer.Extension that allows modifying incoming and outgoing requests. |  | List
+| *camel.component.cometd.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.component.cometd.security-policy* | To use a custom configured SecurityPolicy to control authorization. The option is a org.cometd.bayeux.server.SecurityPolicy type. |  | String
+| *camel.component.cometd.ssl-context-parameters* | To configure security using SSLContextParameters. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.cometd.ssl-key-password* | The password for the keystore when using SSL. |  | String
+| *camel.component.cometd.ssl-keystore* | The path to the keystore. |  | String
+| *camel.component.cometd.ssl-password* | The password when using SSL. |  | String
+| *camel.component.cometd.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-consul-starter/src/main/docs/consul-starter.adoc b/components-starter/camel-consul-starter/src/main/docs/consul-starter.adoc
new file mode 100644
index 0000000..1775481
--- /dev/null
+++ b/components-starter/camel-consul-starter/src/main/docs/consul-starter.adoc
@@ -0,0 +1,116 @@
+== consul - Spring Boot Auto-Configuration
+
+When using consul with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-consul-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 92 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.consul.acl-token* | Sets the ACL token to be used with Consul |  | String
+| *camel.component.consul.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.consul.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.consul.cluster.service.acl-token* |  |  | String
+| *camel.component.consul.cluster.service.attributes* | Custom service attributes. |  | Map
+| *camel.component.consul.cluster.service.block-seconds* |  |  | Integer
+| *camel.component.consul.cluster.service.connect-timeout-millis* |  |  | Long
+| *camel.component.consul.cluster.service.consistency-mode* |  |  | ConsistencyMode
+| *camel.component.consul.cluster.service.datacenter* |  |  | String
+| *camel.component.consul.cluster.service.enabled* | Sets if the consul cluster service should be enabled or not, default is false. | false | Boolean
+| *camel.component.consul.cluster.service.first-index* |  |  | BigInteger
+| *camel.component.consul.cluster.service.id* | Cluster Service ID |  | String
+| *camel.component.consul.cluster.service.near-node* |  |  | String
+| *camel.component.consul.cluster.service.node-meta* |  |  | List
+| *camel.component.consul.cluster.service.order* | Service lookup order/priority. |  | Integer
+| *camel.component.consul.cluster.service.password* |  |  | String
+| *camel.component.consul.cluster.service.ping-instance* |  |  | Boolean
+| *camel.component.consul.cluster.service.read-timeout-millis* |  |  | Long
+| *camel.component.consul.cluster.service.recursive* |  |  | Boolean
+| *camel.component.consul.cluster.service.root-path* |  |  | String
+| *camel.component.consul.cluster.service.session-lock-delay* |  |  | Integer
+| *camel.component.consul.cluster.service.session-refresh-interval* |  |  | Integer
+| *camel.component.consul.cluster.service.session-ttl* |  |  | Integer
+| *camel.component.consul.cluster.service.ssl-context-parameters* |  |  | SSLContextParameters
+| *camel.component.consul.cluster.service.tags* |  |  | Set
+| *camel.component.consul.cluster.service.url* |  |  | String
+| *camel.component.consul.cluster.service.user-name* |  |  | String
+| *camel.component.consul.cluster.service.write-timeout-millis* |  |  | Long
+| *camel.component.consul.configuration.acl-token* | Sets the ACL token to be used with Consul |  | String
+| *camel.component.consul.configuration.action* | The default action. Can be overridden by CamelConsulAction |  | String
+| *camel.component.consul.configuration.block-seconds* | The second to wait for a watch event, default 10 seconds | 10 | Integer
+| *camel.component.consul.configuration.connect-timeout-millis* | Connect timeout for OkHttpClient |  | Long
+| *camel.component.consul.configuration.consistency-mode* | The consistencyMode used for queries, default ConsistencyMode.DEFAULT |  | ConsistencyMode
+| *camel.component.consul.configuration.consul-client* | Reference to a com.orbitz.consul.Consul in the registry. |  | Consul
+| *camel.component.consul.configuration.datacenter* | The data center |  | String
+| *camel.component.consul.configuration.first-index* | The first index for watch for, default 0 |  | BigInteger
+| *camel.component.consul.configuration.key* | The default key. Can be overridden by CamelConsulKey |  | String
+| *camel.component.consul.configuration.near-node* | The near node to use for queries. |  | String
+| *camel.component.consul.configuration.node-meta* | The note meta-data to use for queries. |  | List
+| *camel.component.consul.configuration.password* | Sets the password to be used for basic authentication |  | String
+| *camel.component.consul.configuration.ping-instance* | Configure if the AgentClient should attempt a ping before returning the Consul instance | true | Boolean
+| *camel.component.consul.configuration.read-timeout-millis* | Read timeout for OkHttpClient |  | Long
+| *camel.component.consul.configuration.recursive* | Recursively watch, default false | false | Boolean
+| *camel.component.consul.configuration.ssl-context-parameters* | SSL configuration using an org.apache.camel.support.jsse.SSLContextParameters instance. |  | SSLContextParameters
+| *camel.component.consul.configuration.tags* | Set tags. You can separate multiple tags by comma. |  | Set
+| *camel.component.consul.configuration.url* | The Consul agent URL |  | String
+| *camel.component.consul.configuration.user-name* | Sets the username to be used for basic authentication |  | String
+| *camel.component.consul.configuration.value-as-string* | Default to transform values retrieved from Consul i.e. on KV endpoint to string. | false | Boolean
+| *camel.component.consul.configuration.write-timeout-millis* | Write timeout for OkHttpClient |  | Long
+| *camel.component.consul.datacenter* | The data center |  | String
+| *camel.component.consul.enabled* | Whether to enable auto configuration of the consul component. This is enabled by default. |  | Boolean
+| *camel.component.consul.health.check.repository.checks* | Define the checks to include. |  | List
+| *camel.component.consul.health.check.repository.configurations* | Health check configurations. |  | Map
+| *camel.component.consul.health.check.repository.enabled* |  |  | Boolean
+| *camel.component.consul.health.check.repository.failure-threshold* |  |  | Integer
+| *camel.component.consul.health.check.repository.interval* |  |  | String
+| *camel.component.consul.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.component.consul.password* | Sets the password to be used for basic authentication |  | String
+| *camel.component.consul.service-registry.acl-token* |  |  | String
+| *camel.component.consul.service-registry.attributes* | Custom service attributes. |  | Map
+| *camel.component.consul.service-registry.block-seconds* |  |  | Integer
+| *camel.component.consul.service-registry.check-interval* |  |  | Integer
+| *camel.component.consul.service-registry.check-ttl* |  |  | Integer
+| *camel.component.consul.service-registry.connect-timeout-millis* |  |  | Long
+| *camel.component.consul.service-registry.consistency-mode* |  |  | ConsistencyMode
+| *camel.component.consul.service-registry.datacenter* |  |  | String
+| *camel.component.consul.service-registry.deregister-after* |  |  | Integer
+| *camel.component.consul.service-registry.deregister-services-on-stop* |  |  | Boolean
+| *camel.component.consul.service-registry.enabled* | Sets if the consul service registry should be enabled or not, default is false. | false | Boolean
+| *camel.component.consul.service-registry.first-index* |  |  | BigInteger
+| *camel.component.consul.service-registry.id* | Service Registry ID |  | String
+| *camel.component.consul.service-registry.near-node* |  |  | String
+| *camel.component.consul.service-registry.node-meta* |  |  | List
+| *camel.component.consul.service-registry.order* | Service lookup order/priority. |  | Integer
+| *camel.component.consul.service-registry.override-service-host* |  |  | Boolean
+| *camel.component.consul.service-registry.password* |  |  | String
+| *camel.component.consul.service-registry.ping-instance* |  |  | Boolean
+| *camel.component.consul.service-registry.read-timeout-millis* |  |  | Long
+| *camel.component.consul.service-registry.recursive* |  |  | Boolean
+| *camel.component.consul.service-registry.service-host* |  |  | String
+| *camel.component.consul.service-registry.ssl-context-parameters* |  |  | SSLContextParameters
+| *camel.component.consul.service-registry.tags* |  |  | Set
+| *camel.component.consul.service-registry.url* |  |  | String
+| *camel.component.consul.service-registry.user-name* |  |  | String
+| *camel.component.consul.service-registry.write-timeout-millis* |  |  | Long
+| *camel.component.consul.ssl-context-parameters* | SSL configuration using an org.apache.camel.support.jsse.SSLContextParameters instance. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.consul.url* | The Consul agent URL |  | String
+| *camel.component.consul.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+| *camel.component.consul.user-name* | Sets the username to be used for basic authentication |  | String
+| *camel.component.consul.cluster.service.dc* | *Deprecated*  |  | String
+| *camel.component.consul.configuration.dc* | *Deprecated*  |  | String
+| *camel.component.consul.service-registry.dc* | *Deprecated*  |  | String
+|===
+
diff --git a/components-starter/camel-controlbus-starter/src/main/docs/controlbus-starter.adoc b/components-starter/camel-controlbus-starter/src/main/docs/controlbus-starter.adoc
new file mode 100644
index 0000000..6883311
--- /dev/null
+++ b/components-starter/camel-controlbus-starter/src/main/docs/controlbus-starter.adoc
@@ -0,0 +1,27 @@
+== controlbus - Spring Boot Auto-Configuration
+
+When using controlbus with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-controlbus-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.controlbus.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.controlbus.enabled* | Whether to enable auto configuration of the controlbus component. This is enabled by default. |  | Boolean
+| *camel.component.controlbus.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+|===
+
diff --git a/components-starter/camel-corda-starter/src/main/docs/corda-starter.adoc b/components-starter/camel-corda-starter/src/main/docs/corda-starter.adoc
new file mode 100644
index 0000000..1b1c368
--- /dev/null
+++ b/components-starter/camel-corda-starter/src/main/docs/corda-starter.adoc
@@ -0,0 +1,41 @@
+== corda - Spring Boot Auto-Configuration
+
+When using corda with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-corda-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 17 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.corda.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.corda.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.corda.configuration.arguments* |  |  | Object[]
+| *camel.component.corda.configuration.contract-state-class* |  |  | Class
+| *camel.component.corda.configuration.flow-loci-class* |  |  | Class
+| *camel.component.corda.configuration.host* |  |  | String
+| *camel.component.corda.configuration.node* | The url for the corda node |  | String
+| *camel.component.corda.configuration.operation* | Operation to use |  | String
+| *camel.component.corda.configuration.page-specification* |  |  | PageSpecification
+| *camel.component.corda.configuration.password* | Password for login |  | String
+| *camel.component.corda.configuration.port* |  |  | Integer
+| *camel.component.corda.configuration.process-snapshot* |  |  | Boolean
+| *camel.component.corda.configuration.query-criteria* |  |  | QueryCriteria
+| *camel.component.corda.configuration.sort* |  |  | Sort
+| *camel.component.corda.configuration.username* | Username for login |  | String
+| *camel.component.corda.enabled* | Whether to enable auto configuration of the corda component. This is enabled by default. |  | Boolean
+| *camel.component.corda.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+|===
+
diff --git a/components-starter/camel-core-starter/src/main/docs/core-starter.adoc b/components-starter/camel-core-starter/src/main/docs/core-starter.adoc
new file mode 100644
index 0000000..82810c2
--- /dev/null
+++ b/components-starter/camel-core-starter/src/main/docs/core-starter.adoc
@@ -0,0 +1,169 @@
+== core - Spring Boot Auto-Configuration
+
+When using core with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-core-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 145 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.cloud.consul.service-discovery.acl-token* | Sets the ACL token to be used with Consul |  | String
+| *camel.cloud.consul.service-discovery.block-seconds* | The seconds to wait for a watch event, default 10 seconds | 10 | Integer
+| *camel.cloud.consul.service-discovery.configurations* | Define additional configuration definitions |  | Map
+| *camel.cloud.consul.service-discovery.connect-timeout-millis* | Connect timeout for OkHttpClient |  | Long
+| *camel.cloud.consul.service-discovery.datacenter* | The data center |  | String
+| *camel.cloud.consul.service-discovery.enabled* | Enable the component | true | Boolean
+| *camel.cloud.consul.service-discovery.password* | Sets the password to be used for basic authentication |  | String
+| *camel.cloud.consul.service-discovery.properties* | Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey. |  | Map
+| *camel.cloud.consul.service-discovery.read-timeout-millis* | Read timeout for OkHttpClient |  | Long
+| *camel.cloud.consul.service-discovery.url* | The Consul agent URL |  | String
+| *camel.cloud.consul.service-discovery.user-name* | Sets the username to be used for basic authentication |  | String
+| *camel.cloud.consul.service-discovery.write-timeout-millis* | Write timeout for OkHttpClient |  | Long
+| *camel.cloud.dns.service-discovery.configurations* | Define additional configuration definitions |  | Map
+| *camel.cloud.dns.service-discovery.domain* | The domain name; |  | String
+| *camel.cloud.dns.service-discovery.enabled* | Enable the component | true | Boolean
+| *camel.cloud.dns.service-discovery.properties* | Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey. |  | Map
+| *camel.cloud.dns.service-discovery.proto* | The transport protocol of the desired service. | _tcp | String
+| *camel.cloud.etcd.service-discovery.configurations* | Define additional configuration definitions |  | Map
+| *camel.cloud.etcd.service-discovery.enabled* | Enable the component | true | Boolean
+| *camel.cloud.etcd.service-discovery.password* | The password to use for basic authentication. |  | String
+| *camel.cloud.etcd.service-discovery.properties* | Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey. |  | Map
+| *camel.cloud.etcd.service-discovery.service-path* | The path to look for for service discovery | /services/ | String
+| *camel.cloud.etcd.service-discovery.timeout* | To set the maximum time an action could take to complete. |  | Long
+| *camel.cloud.etcd.service-discovery.type* | To set the discovery type, valid values are on-demand and watch. | on-demand | String
+| *camel.cloud.etcd.service-discovery.uris* | The URIs the client can connect to. |  | String
+| *camel.cloud.etcd.service-discovery.user-name* | The user name to use for basic authentication. |  | String
+| *camel.cloud.kubernetes.service-discovery.api-version* | Sets the API version when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.ca-cert-data* | Sets the Certificate Authority data when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.ca-cert-file* | Sets the Certificate Authority data that are loaded from the file when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.client-cert-data* | Sets the Client Certificate data when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.client-cert-file* | Sets the Client Certificate data that are loaded from the file when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.client-key-algo* | Sets the Client Keystore algorithm, such as RSA when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.client-key-data* | Sets the Client Keystore data when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.client-key-file* | Sets the Client Keystore data that are loaded from the file when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.client-key-passphrase* | Sets the Client Keystore passphrase when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.configurations* | Define additional configuration definitions |  | Map
+| *camel.cloud.kubernetes.service-discovery.dns-domain* | Sets the DNS domain to use for DNS lookup. |  | String
+| *camel.cloud.kubernetes.service-discovery.enabled* | Enable the component | true | Boolean
+| *camel.cloud.kubernetes.service-discovery.lookup* | How to perform service lookup. Possible values: client, dns, environment. When using client, then the client queries the kubernetes master to obtain a list of active pods that provides the service, and then random (or round robin) select a pod. When using dns the service name is resolved as name.namespace.svc.dnsDomain. When using dnssrv the service name is resolved with SRV query for _._...svc... When using environment then environme [...]
+| *camel.cloud.kubernetes.service-discovery.master-url* | Sets the URL to the master when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.namespace* | Sets the namespace to use. Will by default use namespace from the ENV variable KUBERNETES_MASTER. |  | String
+| *camel.cloud.kubernetes.service-discovery.oauth-token* | Sets the OAUTH token for authentication (instead of username/password) when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.password* | Sets the password for authentication when using client lookup |  | String
+| *camel.cloud.kubernetes.service-discovery.port-name* | Sets the Port Name to use for DNS/DNSSRV lookup. |  | String
+| *camel.cloud.kubernetes.service-discovery.port-protocol* | Sets the Port Protocol to use for DNS/DNSSRV lookup. |  | String
+| *camel.cloud.kubernetes.service-discovery.properties* | Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey. |  | Map
+| *camel.cloud.kubernetes.service-discovery.trust-certs* | Sets whether to turn on trust certificate check when using client lookup | false | Boolean
+| *camel.cloud.kubernetes.service-discovery.username* | Sets the username for authentication when using client lookup |  | String
+| *camel.cloud.ribbon.load-balancer.client-name* | Sets the Ribbon client name |  | String
+| *camel.cloud.ribbon.load-balancer.configurations* | Define additional configuration definitions |  | Map
+| *camel.cloud.ribbon.load-balancer.enabled* | Enable the component | true | Boolean
+| *camel.cloud.ribbon.load-balancer.namespace* | The namespace |  | String
+| *camel.cloud.ribbon.load-balancer.password* | The password |  | String
+| *camel.cloud.ribbon.load-balancer.properties* | Set client properties to use. These properties are specific to what service call implementation are in use. For example if using ribbon, then the client properties are define in com.netflix.client.config.CommonClientConfigKey. |  | Map
+| *camel.cloud.ribbon.load-balancer.username* | The username |  | String
+| *camel.hystrix.allow-maximum-size-to-diverge-from-core-size* | Allows the configuration for maximumSize to take effect. That value can then be equal to, or higher, than coreSize | false | String
+| *camel.hystrix.circuit-breaker-enabled* | Whether to use a HystrixCircuitBreaker or not. If false no circuit-breaker logic will be used and all requests permitted. This is similar in effect to circuitBreakerForceClosed() except that continues tracking metrics and knowing whether it should be open/closed, this property results in not even instantiating a circuit-breaker. | true | String
+| *camel.hystrix.circuit-breaker-error-threshold-percentage* | Error percentage threshold (as whole number such as 50) at which point the circuit breaker will trip open and reject requests. It will stay tripped for the duration defined in circuitBreakerSleepWindowInMilliseconds; The error percentage this is compared against comes from HystrixCommandMetrics.getHealthCounts(). | 50 | String
+| *camel.hystrix.circuit-breaker-force-closed* | If true the HystrixCircuitBreaker#allowRequest() will always return true to allow requests regardless of the error percentage from HystrixCommandMetrics.getHealthCounts(). The circuitBreakerForceOpen() property takes precedence so if it set to true this property does nothing. | false | String
+| *camel.hystrix.circuit-breaker-force-open* | If true the HystrixCircuitBreaker.allowRequest() will always return false, causing the circuit to be open (tripped) and reject all requests. This property takes precedence over circuitBreakerForceClosed(); | false | String
+| *camel.hystrix.circuit-breaker-request-volume-threshold* | Minimum number of requests in the metricsRollingStatisticalWindowInMilliseconds() that must exist before the HystrixCircuitBreaker will trip. If below this number the circuit will not trip regardless of error percentage. | 20 | String
+| *camel.hystrix.circuit-breaker-sleep-window-in-milliseconds* | The time in milliseconds after a HystrixCircuitBreaker trips open that it should wait before trying requests again. | 5000 | String
+| *camel.hystrix.configurations* | Define additional configuration definitions |  | Map
+| *camel.hystrix.core-pool-size* | Core thread-pool size that gets passed to java.util.concurrent.ThreadPoolExecutor#setCorePoolSize(int) | 10 | String
+| *camel.hystrix.enabled* | Enable the component | true | Boolean
+| *camel.hystrix.execution-isolation-semaphore-max-concurrent-requests* | Number of concurrent requests permitted to HystrixCommand.run(). Requests beyond the concurrent limit will be rejected. Applicable only when executionIsolationStrategy == SEMAPHORE. | 20 | String
+| *camel.hystrix.execution-isolation-strategy* | What isolation strategy HystrixCommand.run() will be executed with. If THREAD then it will be executed on a separate thread and concurrent requests limited by the number of threads in the thread-pool. If SEMAPHORE then it will be executed on the calling thread and concurrent requests limited by the semaphore count. | THREAD | String
+| *camel.hystrix.execution-isolation-thread-interrupt-on-timeout* | Whether the execution thread should attempt an interrupt (using Future#cancel ) when a thread times out. Applicable only when executionIsolationStrategy() == THREAD. | true | String
+| *camel.hystrix.execution-timeout-enabled* | Whether the timeout mechanism is enabled for this command | true | String
+| *camel.hystrix.execution-timeout-in-milliseconds* | Time in milliseconds at which point the command will timeout and halt execution. If executionIsolationThreadInterruptOnTimeout == true and the command is thread-isolated, the executing thread will be interrupted. If the command is semaphore-isolated and a HystrixObservableCommand, that command will get unsubscribed. | 1000 | String
+| *camel.hystrix.fallback-enabled* | Whether HystrixCommand.getFallback() should be attempted when failure occurs. | true | String
+| *camel.hystrix.fallback-isolation-semaphore-max-concurrent-requests* | Number of concurrent requests permitted to HystrixCommand.getFallback(). Requests beyond the concurrent limit will fail-fast and not attempt retrieving a fallback. | 10 | String
+| *camel.hystrix.group-key* | Sets the group key to use. The default value is CamelHystrix. | CamelHystrix | String
+| *camel.hystrix.keep-alive-time* | Keep-alive time in minutes that gets passed to ThreadPoolExecutor#setKeepAliveTime(long,TimeUnit) | 1 | String
+| *camel.hystrix.max-queue-size* | Max queue size that gets passed to BlockingQueue in HystrixConcurrencyStrategy.getBlockingQueue(int) This should only affect the instantiation of a threadpool - it is not eliglible to change a queue size on the fly. For that, use queueSizeRejectionThreshold(). | -1 | String
+| *camel.hystrix.maximum-size* | Maximum thread-pool size that gets passed to ThreadPoolExecutor#setMaximumPoolSize(int) . This is the maximum amount of concurrency that can be supported without starting to reject HystrixCommands. Please note that this setting only takes effect if you also set allowMaximumSizeToDivergeFromCoreSize | 10 | String
+| *camel.hystrix.metrics-health-snapshot-interval-in-milliseconds* | Time in milliseconds to wait between allowing health snapshots to be taken that calculate success and error percentages and affect HystrixCircuitBreaker.isOpen() status. On high-volume circuits the continual calculation of error percentage can become CPU intensive thus this controls how often it is calculated. | 500 | String
+| *camel.hystrix.metrics-rolling-percentile-bucket-size* | Maximum number of values stored in each bucket of the rolling percentile. This is passed into HystrixRollingPercentile inside HystrixCommandMetrics. | 10 | String
+| *camel.hystrix.metrics-rolling-percentile-enabled* | Whether percentile metrics should be captured using HystrixRollingPercentile inside HystrixCommandMetrics. | true | String
+| *camel.hystrix.metrics-rolling-percentile-window-buckets* | Number of buckets the rolling percentile window is broken into. This is passed into HystrixRollingPercentile inside HystrixCommandMetrics. | 6 | String
+| *camel.hystrix.metrics-rolling-percentile-window-in-milliseconds* | Duration of percentile rolling window in milliseconds. This is passed into HystrixRollingPercentile inside HystrixCommandMetrics. | 10000 | String
+| *camel.hystrix.metrics-rolling-statistical-window-buckets* | Number of buckets the rolling statistical window is broken into. This is passed into HystrixRollingNumber inside HystrixCommandMetrics. | 10 | String
+| *camel.hystrix.metrics-rolling-statistical-window-in-milliseconds* | This property sets the duration of the statistical rolling window, in milliseconds. This is how long metrics are kept for the thread pool. The window is divided into buckets and rolls by those increments. | 10000 | String
+| *camel.hystrix.queue-size-rejection-threshold* | Queue size rejection threshold is an artificial max size at which rejections will occur even if maxQueueSize has not been reached. This is done because the maxQueueSize of a BlockingQueue can not be dynamically changed and we want to support dynamically changing the queue size that affects rejections. This is used by HystrixCommand when queuing a thread for execution. | 5 | String
+| *camel.hystrix.request-log-enabled* | Whether HystrixCommand execution and events should be logged to HystrixRequestLog. | true | String
+| *camel.hystrix.thread-pool-key* | Sets the thread pool key to use. Will by default use the same value as groupKey has been configured to use. | CamelHystrix | String
+| *camel.hystrix.thread-pool-rolling-number-statistical-window-buckets* | Number of buckets the rolling statistical window is broken into. This is passed into HystrixRollingNumber inside each HystrixThreadPoolMetrics instance. | 10 | String
+| *camel.hystrix.thread-pool-rolling-number-statistical-window-in-milliseconds* | Duration of statistical rolling window in milliseconds. This is passed into HystrixRollingNumber inside each HystrixThreadPoolMetrics instance. | 10000 | String
+| *camel.language.constant.enabled* | Whether to enable auto configuration of the constant language. This is enabled by default. |  | Boolean
+| *camel.language.constant.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.language.exchangeproperty.enabled* | Whether to enable auto configuration of the exchangeProperty language. This is enabled by default. |  | Boolean
+| *camel.language.exchangeproperty.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.language.file.enabled* | Whether to enable auto configuration of the file language. This is enabled by default. |  | Boolean
+| *camel.language.file.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.language.header.enabled* | Whether to enable auto configuration of the header language. This is enabled by default. |  | Boolean
+| *camel.language.header.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.language.ref.enabled* | Whether to enable auto configuration of the ref language. This is enabled by default. |  | Boolean
+| *camel.language.ref.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.language.simple.enabled* | Whether to enable auto configuration of the simple language. This is enabled by default. |  | Boolean
+| *camel.language.simple.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.language.tokenize.enabled* | Whether to enable auto configuration of the tokenize language. This is enabled by default. |  | Boolean
+| *camel.language.tokenize.group-delimiter* | Sets the delimiter to use when grouping. If this has not been set then token will be used as the delimiter. |  | String
+| *camel.language.tokenize.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.resilience4j.automatic-transition-from-open-to-half-open-enabled* | Enables automatic transition from OPEN to HALF_OPEN state once the waitDurationInOpenState has passed. | false | Boolean
+| *camel.resilience4j.circuit-breaker-ref* | Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreaker instance to lookup and use from the registry. When using this, then any other circuit breaker options are not in use. |  | String
+| *camel.resilience4j.config-ref* | Refers to an existing io.github.resilience4j.circuitbreaker.CircuitBreakerConfig instance to lookup and use from the registry. |  | String
+| *camel.resilience4j.configurations* | Define additional configuration definitions |  | Map
+| *camel.resilience4j.enabled* | Enable the component | true | Boolean
+| *camel.resilience4j.failure-rate-threshold* | Configures the failure rate threshold in percentage. If the failure rate is equal or greater than the threshold the CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not greater than 100. Default value is 50 percentage. |  | Float
+| *camel.resilience4j.minimum-number-of-calls* | Configures configures the minimum number of calls which are required (per sliding window period) before the CircuitBreaker can calculate the error rate. For example, if minimumNumberOfCalls is 10, then at least 10 calls must be recorded, before the failure rate can be calculated. If only 9 calls have been recorded the CircuitBreaker will not transition to open even if all 9 calls have failed. Default minimumNumberOfCalls is 100 | 100 | Integer
+| *camel.resilience4j.permitted-number-of-calls-in-half-open-state* | Configures the number of permitted calls when the CircuitBreaker is half open. The size must be greater than 0. Default size is 10. | 10 | Integer
+| *camel.resilience4j.sliding-window-size* | Configures the size of the sliding window which is used to record the outcome of calls when the CircuitBreaker is closed. slidingWindowSize configures the size of the sliding window. Sliding window can either be count-based or time-based. If slidingWindowType is COUNT_BASED, the last slidingWindowSize calls are recorded and aggregated. If slidingWindowType is TIME_BASED, the calls of the last slidingWindowSize seconds are recorded and aggregat [...]
+| *camel.resilience4j.sliding-window-type* | Configures the type of the sliding window which is used to record the outcome of calls when the CircuitBreaker is closed. Sliding window can either be count-based or time-based. If slidingWindowType is COUNT_BASED, the last slidingWindowSize calls are recorded and aggregated. If slidingWindowType is TIME_BASED, the calls of the last slidingWindowSize seconds are recorded and aggregated. Default slidingWindowType is COUNT_BASED. | COUNT_BASED | String
+| *camel.resilience4j.slow-call-duration-threshold* | Configures the duration threshold (seconds) above which calls are considered as slow and increase the slow calls percentage. Default value is 60 seconds. | 60 | Integer
+| *camel.resilience4j.slow-call-rate-threshold* | Configures a threshold in percentage. The CircuitBreaker considers a call as slow when the call duration is greater than slowCallDurationThreshold(Duration. When the percentage of slow calls is equal or greater the threshold, the CircuitBreaker transitions to open and starts short-circuiting calls. The threshold must be greater than 0 and not greater than 100. Default value is 100 percentage which means that all recorded calls must be slo [...]
+| *camel.resilience4j.wait-duration-in-open-state* | Configures the wait duration (in seconds) which specifies how long the CircuitBreaker should stay open, before it switches to half open. Default value is 60 seconds. | 60 | Integer
+| *camel.resilience4j.writable-stack-trace-enabled* | Enables writable stack traces. When set to false, Exception.getStackTrace returns a zero length array. This may be used to reduce log spam when the circuit breaker is open as the cause of the exceptions is already known (the circuit breaker is short-circuiting calls). | true | Boolean
+| *camel.rest.api-component* | The name of the Camel component to use as the REST API (such as swagger) | swagger | String
+| *camel.rest.api-context-id-pattern* | Sets an CamelContext id pattern to only allow Rest APIs from rest services within CamelContext's which name matches the pattern. The pattern #name# refers to the CamelContext name, to match on the current CamelContext only. For any other value, the pattern uses the rules from PatternHelper#matchPattern(String,String) |  | String
+| *camel.rest.api-context-listing* | Sets whether listing of all available CamelContext's with REST services in the JVM is enabled. If enabled it allows to discover these contexts, if false then only the current CamelContext is in use. | false | Boolean
+| *camel.rest.api-context-path* | Sets a leading API context-path the REST API services will be using. This can be used when using components such as camel-servlet where the deployed web application is deployed using a context-path. |  | String
+| *camel.rest.api-context-route-id* | Sets the route id to use for the route that services the REST API. The route will by default use an auto assigned route id. |  | String
+| *camel.rest.api-host* | To use an specific hostname for the API documentation (eg swagger) This can be used to override the generated host with this configured hostname |  | String
+| *camel.rest.api-property* | Allows to configure as many additional properties for the api documentation (swagger). For example set property api.title to my cool stuff |  | Map
+| *camel.rest.api-vendor-extension* | Whether vendor extension is enabled in the Rest APIs. If enabled then Camel will include additional information as vendor extension (eg keys starting with x-) such as route ids, class names etc. Not all 3rd party API gateways and tools supports vendor-extensions when importing your API docs. | false | Boolean
+| *camel.rest.binding-mode* | Sets the binding mode to use. The default value is off |  | RestBindingMode
+| *camel.rest.client-request-validation* | Whether to enable validation of the client request to check whether the Content-Type and Accept headers from the client is supported by the Rest-DSL configuration of its consumes/produces settings. This can be turned on, to enable this check. In case of validation error, then HTTP Status codes 415 or 406 is returned. The default value is false. | false | Boolean
+| *camel.rest.component* | The Camel Rest component to use for the REST transport (consumer), such as netty-http, jetty, servlet, undertow. If no component has been explicit configured, then Camel will lookup if there is a Camel component that integrates with the Rest DSL, or if a org.apache.camel.spi.RestConsumerFactory is registered in the registry. If either one is found, then that is being used. |  | String
+| *camel.rest.component-property* | Allows to configure as many additional properties for the rest component in use. |  | Map
+| *camel.rest.consumer-property* | Allows to configure as many additional properties for the rest consumer in use. |  | Map
+| *camel.rest.context-path* | Sets a leading context-path the REST services will be using. This can be used when using components such as camel-servlet where the deployed web application is deployed using a context-path. Or for components such as camel-jetty or camel-netty-http that includes a HTTP server. |  | String
+| *camel.rest.cors-headers* | Allows to configure custom CORS headers. |  | Map
+| *camel.rest.data-format-property* | Allows to configure as many additional properties for the data formats in use. For example set property prettyPrint to true to have json outputted in pretty mode. The properties can be prefixed to denote the option is only for either JSON or XML and for either the IN or the OUT. The prefixes are: json.in. json.out. xml.in. xml.out. For example a key with value xml.out.mustBeJAXBElement is only for the XML data format for the outgoing. A key without a [...]
+| *camel.rest.enable-cors* | Whether to enable CORS headers in the HTTP response. The default value is false. | false | Boolean
+| *camel.rest.endpoint-property* | Allows to configure as many additional properties for the rest endpoint in use. |  | Map
+| *camel.rest.host* | The hostname to use for exposing the REST service. |  | String
+| *camel.rest.host-name-resolver* | If no hostname has been explicit configured, then this resolver is used to compute the hostname the REST service will be using. |  | RestHostNameResolver
+| *camel.rest.json-data-format* | Name of specific json data format to use. By default json-jackson will be used. Important: This option is only for setting a custom name of the data format, not to refer to an existing data format instance. |  | String
+| *camel.rest.port* | The port number to use for exposing the REST service. Notice if you use servlet component then the port number configured here does not apply, as the port number in use is the actual port number the servlet component is using. eg if using Apache Tomcat its the tomcat http port, if using Apache Karaf its the HTTP service in Karaf that uses port 8181 by default etc. Though in those situations setting the port number here, allows tooling and JMX to know the port number [...]
+| *camel.rest.producer-api-doc* | Sets the location of the api document (swagger api) the REST producer will use to validate the REST uri and query parameters are valid accordingly to the api document. This requires adding camel-swagger-java to the classpath, and any miss configuration will let Camel fail on startup and report the error(s). The location of the api document is loaded from classpath by default, but you can use file: or http: to refer to resources to load from file or http  [...]
+| *camel.rest.producer-component* | Sets the name of the Camel component to use as the REST producer |  | String
+| *camel.rest.scheme* | The scheme to use for exposing the REST service. Usually http or https is supported. The default value is http |  | String
+| *camel.rest.skip-binding-on-error-code* | Whether to skip binding on output if there is a custom HTTP error code header. This allows to build custom error messages that do not bind to json / xml etc, as success messages otherwise will do. | false | Boolean
+| *camel.rest.use-x-forward-headers* | Whether to use X-Forward headers for Host and related setting. The default value is true. | true | Boolean
+| *camel.rest.xml-data-format* | Name of specific XML data format to use. By default jaxb will be used. Important: This option is only for setting a custom name of the data format, not to refer to an existing data format instance. |  | String
+|===
+
diff --git a/components-starter/camel-couchbase-starter/src/main/docs/couchbase-starter.adoc b/components-starter/camel-couchbase-starter/src/main/docs/couchbase-starter.adoc
new file mode 100644
index 0000000..46074eb
--- /dev/null
+++ b/components-starter/camel-couchbase-starter/src/main/docs/couchbase-starter.adoc
@@ -0,0 +1,28 @@
+== couchbase - Spring Boot Auto-Configuration
+
+When using couchbase with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-couchbase-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.couchbase.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.couchbase.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.couchbase.enabled* | Whether to enable auto configuration of the couchbase component. This is enabled by default. |  | Boolean
+| *camel.component.couchbase.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed  [...]
+|===
+
diff --git a/components-starter/camel-couchdb-starter/src/main/docs/couchdb-starter.adoc b/components-starter/camel-couchdb-starter/src/main/docs/couchdb-starter.adoc
new file mode 100644
index 0000000..f860653
--- /dev/null
+++ b/components-starter/camel-couchdb-starter/src/main/docs/couchdb-starter.adoc
@@ -0,0 +1,28 @@
+== couchdb - Spring Boot Auto-Configuration
+
+When using couchdb with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-couchdb-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.couchdb.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.couchdb.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.couchdb.enabled* | Whether to enable auto configuration of the couchdb component. This is enabled by default. |  | Boolean
+| *camel.component.couchdb.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-cron-starter/src/main/docs/cron-starter.adoc b/components-starter/camel-cron-starter/src/main/docs/cron-starter.adoc
new file mode 100644
index 0000000..4960297
--- /dev/null
+++ b/components-starter/camel-cron-starter/src/main/docs/cron-starter.adoc
@@ -0,0 +1,28 @@
+== cron - Spring Boot Auto-Configuration
+
+When using cron with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-cron-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.cron.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.cron.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.cron.cron-service* | The id of the CamelCronService to use when multiple implementations are provided |  | String
+| *camel.component.cron.enabled* | Whether to enable auto configuration of the cron component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-crypto-cms-starter/src/main/docs/crypto-cms-starter.adoc b/components-starter/camel-crypto-cms-starter/src/main/docs/crypto-cms-starter.adoc
new file mode 100644
index 0000000..743390a
--- /dev/null
+++ b/components-starter/camel-crypto-cms-starter/src/main/docs/crypto-cms-starter.adoc
@@ -0,0 +1,29 @@
+== crypto-cms - Spring Boot Auto-Configuration
+
+When using crypto-cms with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-crypto-cms-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.crypto-cms.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.crypto-cms.enabled* | Whether to enable auto configuration of the crypto-cms component. This is enabled by default. |  | Boolean
+| *camel.component.crypto-cms.enveloped-data-decryptor-configuration* | To configure the shared EnvelopedDataDecryptorConfiguration, which determines the uri parameters for the decrypt operation. The option is a org.apache.camel.component.crypto.cms.crypt.EnvelopedDataDecryptorConfiguration type. |  | String
+| *camel.component.crypto-cms.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+| *camel.component.crypto-cms.signed-data-verifier-configuration* | To configure the shared SignedDataVerifierConfiguration, which determines the uri parameters for the verify operation. The option is a org.apache.camel.component.crypto.cms.sig.SignedDataVerifierConfiguration type. |  | String
+|===
+
diff --git a/components-starter/camel-crypto-starter/src/main/docs/crypto-starter.adoc b/components-starter/camel-crypto-starter/src/main/docs/crypto-starter.adoc
new file mode 100644
index 0000000..ae41086
--- /dev/null
+++ b/components-starter/camel-crypto-starter/src/main/docs/crypto-starter.adoc
@@ -0,0 +1,74 @@
+== crypto - Spring Boot Auto-Configuration
+
+When using crypto with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-crypto-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 50 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.crypto.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.crypto.configuration.algorithm* | Sets the JCE name of the Algorithm that should be used for the signer. | SHA256withRSA | String
+| *camel.component.crypto.configuration.alias* | Sets the alias used to query the KeyStore for keys and {link java.security.cert.Certificate Certificates} to be used in signing and verifying exchanges. This value can be provided at runtime via the message header org.apache.camel.component.crypto.DigitalSignatureConstants#KEYSTORE_ALIAS |  | String
+| *camel.component.crypto.configuration.buffer-size* | Set the size of the buffer used to read in the Exchange payload data. | 2048 | Integer
+| *camel.component.crypto.configuration.certificate* | Set the Certificate that should be used to verify the signature in the exchange based on its payload. |  | Certificate
+| *camel.component.crypto.configuration.certificate-name* | Sets the reference name for a PrivateKey that can be found in the registry. |  | String
+| *camel.component.crypto.configuration.clear-headers* | Determines if the Signature specific headers be cleared after signing and verification. Defaults to true, and should only be made otherwise at your extreme peril as vital private information such as Keys and passwords may escape if unset. | true | Boolean
+| *camel.component.crypto.configuration.crypto-operation* | Set the Crypto operation from that supplied after the crypto scheme in the endpoint uri e.g. crypto:sign sets sign as the operation. |  | CryptoOperation
+| *camel.component.crypto.configuration.key-store-parameters* | Sets the KeyStore that can contain keys and Certficates for use in signing and verifying exchanges based on the given KeyStoreParameters. A KeyStore is typically used with an alias, either one supplied in the Route definition or dynamically via the message header CamelSignatureKeyStoreAlias. If no alias is supplied and there is only a single entry in the Keystore, then this single entry will be used. |  | KeyStoreParameters
+| *camel.component.crypto.configuration.keystore* | Sets the KeyStore that can contain keys and Certficates for use in signing and verifying exchanges. A KeyStore is typically used with an alias, either one supplied in the Route definition or dynamically via the message header CamelSignatureKeyStoreAlias. If no alias is supplied and there is only a single entry in the Keystore, then this single entry will be used. |  | KeyStore
+| *camel.component.crypto.configuration.keystore-name* | Sets the reference name for a Keystore that can be found in the registry. |  | String
+| *camel.component.crypto.configuration.name* | The logical name of this operation. |  | String
+| *camel.component.crypto.configuration.password* | Sets the password used to access an aliased PrivateKey in the KeyStore. |  | String
+| *camel.component.crypto.configuration.private-key* | Set the PrivateKey that should be used to sign the exchange |  | PrivateKey
+| *camel.component.crypto.configuration.private-key-name* | Sets the reference name for a PrivateKey that can be found in the registry. |  | String
+| *camel.component.crypto.configuration.provider* | Set the id of the security provider that provides the configured Signature algorithm. |  | String
+| *camel.component.crypto.configuration.public-key* | Set the PublicKey that should be used to verify the signature in the exchange. |  | PublicKey
+| *camel.component.crypto.configuration.public-key-name* | references that should be resolved when the context changes |  | String
+| *camel.component.crypto.configuration.secure-random* | Set the SecureRandom used to initialize the Signature service |  | SecureRandom
+| *camel.component.crypto.configuration.secure-random-name* | Sets the reference name for a SecureRandom that can be found in the registry. |  | String
+| *camel.component.crypto.configuration.signature-header-name* | Set the name of the message header that should be used to store the base64 encoded signature. This defaults to 'CamelDigitalSignature' |  | String
+| *camel.component.crypto.enabled* | Whether to enable auto configuration of the crypto component. This is enabled by default. |  | Boolean
+| *camel.component.crypto.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.dataformat.crypto.algorithm* | The JCE algorithm name indicating the cryptographic algorithm that will be used. |  | String
+| *camel.dataformat.crypto.algorithm-parameter-ref* | A JCE AlgorithmParameterSpec used to initialize the Cipher. Will lookup the type using the given name as a java.security.spec.AlgorithmParameterSpec type. |  | String
+| *camel.dataformat.crypto.buffersize* | The size of the buffer used in the signature process. |  | Integer
+| *camel.dataformat.crypto.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.crypto.crypto-provider* | The name of the JCE Security Provider that should be used. |  | String
+| *camel.dataformat.crypto.enabled* | Whether to enable auto configuration of the crypto data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.crypto.init-vector-ref* | Refers to a byte array containing the Initialization Vector that will be used to initialize the Cipher. |  | String
+| *camel.dataformat.crypto.inline* | Flag indicating that the configured IV should be inlined into the encrypted data stream. Is by default false. | false | Boolean
+| *camel.dataformat.crypto.key-ref* | Refers to the secret key to lookup from the register to use. |  | String
+| *camel.dataformat.crypto.mac-algorithm* | The JCE algorithm name indicating the Message Authentication algorithm. | HmacSHA1 | String
+| *camel.dataformat.crypto.should-append-h-m-a-c* | Flag indicating that a Message Authentication Code should be calculated and appended to the encrypted data. | true | Boolean
+| *camel.dataformat.pgp.algorithm* | Symmetric key encryption algorithm; possible values are defined in org.bouncycastle.bcpg.SymmetricKeyAlgorithmTags; for example 2 (= TRIPLE DES), 3 (= CAST5), 4 (= BLOWFISH), 6 (= DES), 7 (= AES_128). Only relevant for encrypting. |  | Integer
+| *camel.dataformat.pgp.armored* | This option will cause PGP to base64 encode the encrypted text, making it available for copy/paste, etc. | false | Boolean
+| *camel.dataformat.pgp.compression-algorithm* | Compression algorithm; possible values are defined in org.bouncycastle.bcpg.CompressionAlgorithmTags; for example 0 (= UNCOMPRESSED), 1 (= ZIP), 2 (= ZLIB), 3 (= BZIP2). Only relevant for encrypting. |  | Integer
+| *camel.dataformat.pgp.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.pgp.enabled* | Whether to enable auto configuration of the pgp data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.pgp.hash-algorithm* | Signature hash algorithm; possible values are defined in org.bouncycastle.bcpg.HashAlgorithmTags; for example 2 (= SHA1), 8 (= SHA256), 9 (= SHA384), 10 (= SHA512), 11 (=SHA224). Only relevant for signing. |  | Integer
+| *camel.dataformat.pgp.integrity* | Adds an integrity check/sign into the encryption file. The default value is true. | true | Boolean
+| *camel.dataformat.pgp.key-file-name* | Filename of the keyring; must be accessible as a classpath resource (but you can specify a location in the file system by using the file: prefix). |  | String
+| *camel.dataformat.pgp.key-userid* | The user ID of the key in the PGP keyring used during encryption. Can also be only a part of a user ID. For example, if the user ID is Test User then you can use the part Test User or to address the user ID. |  | String
+| *camel.dataformat.pgp.password* | Password used when opening the private key (not used for encryption). |  | String
+| *camel.dataformat.pgp.provider* | Java Cryptography Extension (JCE) provider, default is Bouncy Castle (BC). Alternatively you can use, for example, the IAIK JCE provider; in this case the provider must be registered beforehand and the Bouncy Castle provider must not be registered beforehand. The Sun JCE provider does not work. |  | String
+| *camel.dataformat.pgp.signature-key-file-name* | Filename of the keyring to use for signing (during encryption) or for signature verification (during decryption); must be accessible as a classpath resource (but you can specify a location in the file system by using the file: prefix). |  | String
+| *camel.dataformat.pgp.signature-key-ring* | Keyring used for signing/verifying as byte array. You can not set the signatureKeyFileName and signatureKeyRing at the same time. |  | String
+| *camel.dataformat.pgp.signature-key-userid* | User ID of the key in the PGP keyring used for signing (during encryption) or signature verification (during decryption). During the signature verification process the specified User ID restricts the public keys from the public keyring which can be used for the verification. If no User ID is specified for the signature verficiation then any public key in the public keyring can be used for the verification. Can also be only a part of a user  [...]
+| *camel.dataformat.pgp.signature-password* | Password used when opening the private key used for signing (during encryption). |  | String
+| *camel.dataformat.pgp.signature-verification-option* | Controls the behavior for verifying the signature during unmarshaling. There are 4 values possible: optional: The PGP message may or may not contain signatures; if it does contain signatures, then a signature verification is executed. required: The PGP message must contain at least one signature; if this is not the case an exception (PGPException) is thrown. A signature verification is executed. ignore: Contained signatures in the  [...]
+|===
+
diff --git a/components-starter/camel-csv-starter/src/main/docs/csv-starter.adoc b/components-starter/camel-csv-starter/src/main/docs/csv-starter.adoc
new file mode 100644
index 0000000..fc1ecb2
--- /dev/null
+++ b/components-starter/camel-csv-starter/src/main/docs/csv-starter.adoc
@@ -0,0 +1,54 @@
+== csv - Spring Boot Auto-Configuration
+
+When using csv with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-csv-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 30 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.csv.allow-missing-column-names* | Whether to allow missing column names. | false | Boolean
+| *camel.dataformat.csv.comment-marker* | Sets the comment marker of the reference format. |  | String
+| *camel.dataformat.csv.comment-marker-disabled* | Disables the comment marker of the reference format. | false | Boolean
+| *camel.dataformat.csv.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.csv.delimiter* | Sets the delimiter to use. The default value is , (comma) |  | String
+| *camel.dataformat.csv.enabled* | Whether to enable auto configuration of the csv data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.csv.escape* | Sets the escape character to use |  | String
+| *camel.dataformat.csv.escape-disabled* | Use for disabling using escape character | false | Boolean
+| *camel.dataformat.csv.format-name* | The name of the format to use, the default value is CSVFormat.DEFAULT |  | String
+| *camel.dataformat.csv.format-ref* | The reference format to use, it will be updated with the other format options, the default value is CSVFormat.DEFAULT |  | String
+| *camel.dataformat.csv.header* | To configure the CSV headers |  | List
+| *camel.dataformat.csv.header-disabled* | Use for disabling headers | false | Boolean
+| *camel.dataformat.csv.ignore-empty-lines* | Whether to ignore empty lines. | false | Boolean
+| *camel.dataformat.csv.ignore-header-case* | Sets whether or not to ignore case when accessing header names. | false | Boolean
+| *camel.dataformat.csv.ignore-surrounding-spaces* | Whether to ignore surrounding spaces | false | Boolean
+| *camel.dataformat.csv.lazy-load* | Whether the unmarshalling should produce an iterator that reads the lines on the fly or if all the lines must be read at one. | false | Boolean
+| *camel.dataformat.csv.marshaller-factory-ref* | Sets the implementation of the CsvMarshallerFactory interface which is able to customize marshalling/unmarshalling behavior by extending CsvMarshaller or creating it from scratch. |  | String
+| *camel.dataformat.csv.null-string* | Sets the null string |  | String
+| *camel.dataformat.csv.null-string-disabled* | Used to disable null strings | false | Boolean
+| *camel.dataformat.csv.quote* | Sets the quote which by default is |  | String
+| *camel.dataformat.csv.quote-disabled* | Used to disable quotes | false | Boolean
+| *camel.dataformat.csv.quote-mode* | Sets the quote mode |  | String
+| *camel.dataformat.csv.record-converter-ref* | Refers to a custom CsvRecordConverter to lookup from the registry to use. |  | String
+| *camel.dataformat.csv.record-separator* | Sets the record separator (aka new line) which by default is new line characters (CRLF) |  | String
+| *camel.dataformat.csv.record-separator-disabled* | Used for disabling record separator |  | String
+| *camel.dataformat.csv.skip-header-record* | Whether to skip the header record in the output | false | Boolean
+| *camel.dataformat.csv.trailing-delimiter* | Sets whether or not to add a trailing delimiter. | false | Boolean
+| *camel.dataformat.csv.trim* | Sets whether or not to trim leading and trailing blanks. | false | Boolean
+| *camel.dataformat.csv.use-maps* | Whether the unmarshalling should produce maps (HashMap)for the lines values instead of lists. It requires to have header (either defined or collected). | false | Boolean
+| *camel.dataformat.csv.use-ordered-maps* | Whether the unmarshalling should produce ordered maps (LinkedHashMap) for the lines values instead of lists. It requires to have header (either defined or collected). | false | Boolean
+|===
+
diff --git a/components-starter/camel-cxf-starter/src/main/docs/cxf-starter.adoc b/components-starter/camel-cxf-starter/src/main/docs/cxf-starter.adoc
new file mode 100644
index 0000000..617cb2d
--- /dev/null
+++ b/components-starter/camel-cxf-starter/src/main/docs/cxf-starter.adoc
@@ -0,0 +1,37 @@
+== cxf - Spring Boot Auto-Configuration
+
+When using cxf with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-cxf-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 13 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.cxf.allow-streaming* | This option controls whether the CXF component, when running in PAYLOAD mode, will DOM parse the incoming messages into DOM Elements or keep the payload as a javax.xml.transform.Source object that would allow streaming in some cases. |  | Boolean
+| *camel.component.cxf.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.cxf.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.cxf.enabled* | Whether to enable auto configuration of the cxf component. This is enabled by default. |  | Boolean
+| *camel.component.cxf.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.cxf.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.cxf.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+| *camel.component.cxfrs.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.cxfrs.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.cxfrs.enabled* | Whether to enable auto configuration of the cxfrs component. This is enabled by default. |  | Boolean
+| *camel.component.cxfrs.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.cxfrs.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+| *camel.component.cxfrs.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-dataformat-starter/src/main/docs/dataformat-starter.adoc b/components-starter/camel-dataformat-starter/src/main/docs/dataformat-starter.adoc
new file mode 100644
index 0000000..27a9e65
--- /dev/null
+++ b/components-starter/camel-dataformat-starter/src/main/docs/dataformat-starter.adoc
@@ -0,0 +1,27 @@
+== dataformat - Spring Boot Auto-Configuration
+
+When using dataformat with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-dataformat-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.dataformat.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.dataformat.enabled* | Whether to enable auto configuration of the dataformat component. This is enabled by default. |  | Boolean
+| *camel.component.dataformat.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+|===
+
diff --git a/components-starter/camel-dataset-starter/src/main/docs/dataset-starter.adoc b/components-starter/camel-dataset-starter/src/main/docs/dataset-starter.adoc
new file mode 100644
index 0000000..d1f840e
--- /dev/null
+++ b/components-starter/camel-dataset-starter/src/main/docs/dataset-starter.adoc
@@ -0,0 +1,31 @@
+== dataset - Spring Boot Auto-Configuration
+
+When using dataset with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-dataset-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 7 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.dataset-test.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.dataset-test.enabled* | Whether to enable auto configuration of the dataset-test component. This is enabled by default. |  | Boolean
+| *camel.component.dataset-test.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.dataset.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.dataset.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.dataset.enabled* | Whether to enable auto configuration of the dataset component. This is enabled by default. |  | Boolean
+| *camel.component.dataset.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-debezium-mongodb-starter/src/main/docs/debezium-mongodb-starter.adoc b/components-starter/camel-debezium-mongodb-starter/src/main/docs/debezium-mongodb-starter.adoc
new file mode 100644
index 0000000..70a92cd
--- /dev/null
+++ b/components-starter/camel-debezium-mongodb-starter/src/main/docs/debezium-mongodb-starter.adoc
@@ -0,0 +1,55 @@
+== debezium-mongodb - Spring Boot Auto-Configuration
+
+When using debezium-mongodb with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-debezium-mongodb-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 31 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.debezium-mongodb.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.debezium-mongodb.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.debezium-mongodb.configuration.collection-blacklist* | Description is not available here, please check Debezium website for corresponding key 'collection.blacklist' description. |  | String
+| *camel.component.debezium-mongodb.configuration.collection-whitelist* | The collections for which changes are to be captured |  | String
+| *camel.component.debezium-mongodb.configuration.connect-backoff-initial-delay-ms* | The initial delay when trying to reconnect to a primary after a connection cannot be made or when no primary is available. Defaults to 1 second (1000 ms). | 1000 | Long
+| *camel.component.debezium-mongodb.configuration.connect-backoff-max-delay-ms* | The maximum delay when trying to reconnect to a primary after a connection cannot be made or when no primary is available. Defaults to 120 second (120,000 ms). | 120000 | Long
+| *camel.component.debezium-mongodb.configuration.connect-max-attempts* | Maximum number of failed connection attempts to a replica set primary before an exception occurs and task is aborted. Defaults to 16, which with the defaults for 'connect.backoff.initial.delay.ms' and 'connect.backoff.max.delay.ms' results in just over 20 minutes of attempts before failing. | 16 | Integer
+| *camel.component.debezium-mongodb.configuration.database-blacklist* | The databases for which changes are to be excluded |  | String
+| *camel.component.debezium-mongodb.configuration.database-history-file-filename* | The path to the file that will be used to record the database history |  | String
+| *camel.component.debezium-mongodb.configuration.database-whitelist* | The databases for which changes are to be captured |  | String
+| *camel.component.debezium-mongodb.configuration.field-blacklist* | Description is not available here, please check Debezium website for corresponding key 'field.blacklist' description. |  | String
+| *camel.component.debezium-mongodb.configuration.field-renames* | Description is not available here, please check Debezium website for corresponding key 'field.renames' description. |  | String
+| *camel.component.debezium-mongodb.configuration.heartbeat-interval-ms* | Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default. | 0 | Integer
+| *camel.component.debezium-mongodb.configuration.heartbeat-topics-prefix* | The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat. | __debezium-heartbeat | String
+| *camel.component.debezium-mongodb.configuration.initial-sync-max-threads* | Maximum number of threads used to perform an intial sync of the collections in a replica set. Defaults to 1. | 1 | Integer
+| *camel.component.debezium-mongodb.configuration.max-batch-size* | Maximum size of each batch of source records. Defaults to 2048. | 2048 | Integer
+| *camel.component.debezium-mongodb.configuration.max-queue-size* | Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size. | 8192 | Integer
+| *camel.component.debezium-mongodb.configuration.mongodb-hosts* | The hostname and port pairs (in the form 'host' or 'host:port') of the MongoDB server(s) in the replica set. |  | String
+| *camel.component.debezium-mongodb.configuration.mongodb-members-auto-discover* | Specifies whether the addresses in 'hosts' are seeds that should be used to discover all members of the cluster or replica set ('true'), or whether the address(es) in 'hosts' should be used as is ('false'). The default is 'true'. | true | Boolean
+| *camel.component.debezium-mongodb.configuration.mongodb-name* | Unique name that identifies the MongoDB replica set or cluster and all recorded offsets, andthat is used as a prefix for all schemas and topics. Each distinct MongoDB installation should have a separate namespace and monitored by at most one Debezium connector. |  | String
+| *camel.component.debezium-mongodb.configuration.mongodb-password* | Password to be used when connecting to MongoDB, if necessary. |  | String
+| *camel.component.debezium-mongodb.configuration.mongodb-ssl-enabled* | Should connector use SSL to connect to MongoDB instances | false | Boolean
+| *camel.component.debezium-mongodb.configuration.mongodb-ssl-invalid-hostname-allowed* | Whether invalid host names are allowed when using SSL. If true the connection will not prevent man-in-the-middle attacks | false | Boolean
+| *camel.component.debezium-mongodb.configuration.mongodb-user* | Database user for connecting to MongoDB, if necessary. |  | String
+| *camel.component.debezium-mongodb.configuration.poll-interval-ms* | Frequency in milliseconds to wait for new change events to appear after receiving no events. Defaults to 500ms. | 500 | Long
+| *camel.component.debezium-mongodb.configuration.snapshot-delay-ms* | The number of milliseconds to delay before a snapshot will begin. | 0 | Long
+| *camel.component.debezium-mongodb.configuration.snapshot-fetch-size* | The maximum number of records that should be loaded into memory while performing a snapshot |  | Integer
+| *camel.component.debezium-mongodb.configuration.snapshot-mode* | The criteria for running a snapshot upon startup of the connector. Options include: 'initial' (the default) to specify the connector should always perform an initial sync when required; 'never' to specify the connector should never perform an initial sync | initial | String
+| *camel.component.debezium-mongodb.configuration.source-struct-version* | A version of the format of the publicly visible source part in the message | v2 | String
+| *camel.component.debezium-mongodb.configuration.tombstones-on-delete* | Whether delete operations should be represented by a delete event and a subsquenttombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted. | false | Boolean
+| *camel.component.debezium-mongodb.enabled* | Whether to enable auto configuration of the debezium-mongodb component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-debezium-mysql-starter/src/main/docs/debezium-mysql-starter.adoc b/components-starter/camel-debezium-mysql-starter/src/main/docs/debezium-mysql-starter.adoc
new file mode 100644
index 0000000..79c143a
--- /dev/null
+++ b/components-starter/camel-debezium-mysql-starter/src/main/docs/debezium-mysql-starter.adoc
@@ -0,0 +1,85 @@
+== debezium-mysql - Spring Boot Auto-Configuration
+
+When using debezium-mysql with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-debezium-mysql-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 61 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.debezium-mysql.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.debezium-mysql.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.debezium-mysql.configuration.bigint-unsigned-handling-mode* | Specify how BIGINT UNSIGNED columns should be represented in change events, including:'precise' uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'long' (the default) represents values using Java's 'long', which may not offer the precision but will be far easier to use in consum [...]
+| *camel.component.debezium-mysql.configuration.binlog-buffer-size* | The size of a look-ahead buffer used by the binlog reader to decide whether the transaction in progress is going to be committed or rolled back. Use 0 to disable look-ahead buffering. Defaults to 0 (i.e. buffering is disabled). | 0 | Integer
+| *camel.component.debezium-mysql.configuration.column-blacklist* | Description is not available here, please check Debezium website for corresponding key 'column.blacklist' description. |  | String
+| *camel.component.debezium-mysql.configuration.connect-keep-alive* | Whether a separate thread should be used to ensure the connection is kept alive. | true | Boolean
+| *camel.component.debezium-mysql.configuration.connect-keep-alive-interval-ms* | Interval in milliseconds to wait for connection checking if keep alive thread is used. | 60000 | Long
+| *camel.component.debezium-mysql.configuration.connect-timeout-ms* | Maximum time in milliseconds to wait after trying to connect to the database before timing out. | 30000 | Integer
+| *camel.component.debezium-mysql.configuration.database-blacklist* | Description is not available here, please check Debezium website for corresponding key 'database.blacklist' description. |  | String
+| *camel.component.debezium-mysql.configuration.database-history* | The name of the DatabaseHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'database.history.' string. | io.debezium.relational.history.FileDatabaseHistory | String
+| *camel.component.debezium-mysql.configuration.database-history-file-filename* | The path to the file that will be used to record the database history |  | String
+| *camel.component.debezium-mysql.configuration.database-history-kafka-bootstrap-servers* | A list of host/port pairs that the connector will use for establishing the initial connection to the Kafka cluster for retrieving database schema history previously stored by the connector. This should point to the same Kafka cluster used by the Kafka Connect process. |  | String
+| *camel.component.debezium-mysql.configuration.database-history-kafka-recovery-attempts* | The number of attempts in a row that no data are returned from Kafka before recover completes. The maximum amount of time to wait after receiving no data is (recovery.attempts) x (recovery.poll.interval.ms). | 100 | Integer
+| *camel.component.debezium-mysql.configuration.database-history-kafka-recovery-poll-interval-ms* | The number of milliseconds to wait while polling for persisted data during recovery. | 100 | Integer
+| *camel.component.debezium-mysql.configuration.database-history-kafka-topic* | The name of the topic for the database schema history |  | String
+| *camel.component.debezium-mysql.configuration.database-history-skip-unparseable-ddl* | Controls the action Debezium will take when it meets a DDL statement in binlog, that it cannot parse.By default the connector will stop operating but by changing the setting it can ignore the statements which it cannot parse. If skipping is enabled then Debezium can miss metadata changes. | false | Boolean
+| *camel.component.debezium-mysql.configuration.database-history-store-only-monitored-tables-ddl* | Controls what DDL will Debezium store in database history.By default (false) Debezium will store all incoming DDL statements. If set to truethen only DDL that manipulates a monitored table will be stored. | false | Boolean
+| *camel.component.debezium-mysql.configuration.database-hostname* | Resolvable hostname or IP address of the MySQL database server. |  | String
+| *camel.component.debezium-mysql.configuration.database-initial-statements* | A semicolon separated list of SQL statements to be executed when a JDBC connection (not binlog reading connection) to the database is established. Note that the connector may establish JDBC connections at its own discretion, so this should typically be used for configuration of session parameters only,but not for executing DML statements. Use doubled semicolon (';;') to use a semicolon as a character and not a [...]
+| *camel.component.debezium-mysql.configuration.database-jdbc-driver* | JDBC Driver class name used to connect to the MySQL database server. | class com.mysql.cj.jdbc.Driver | String
+| *camel.component.debezium-mysql.configuration.database-password* | Password of the MySQL database user to be used when connecting to the database. |  | String
+| *camel.component.debezium-mysql.configuration.database-port* | Port of the MySQL database server. | 3306 | Integer
+| *camel.component.debezium-mysql.configuration.database-server-id* | A numeric ID of this database client, which must be unique across all currently-running database processes in the cluster. This connector joins the MySQL database cluster as another server (with this unique ID) so it can read the binlog. By default, a random number is generated between 5400 and 6400. |  | Long
+| *camel.component.debezium-mysql.configuration.database-server-id-offset* | Only relevant if parallel snapshotting is configured. During parallel snapshotting, multiple (4) connections open to the database client, and they each need their own unique connection ID. This offset is used to generate those IDs from the base configured cluster ID. | 10000 | Long
+| *camel.component.debezium-mysql.configuration.database-server-name* | Unique name that identifies the database server and all recorded offsets, and that is used as a prefix for all schemas and topics. Each distinct installation should have a separate namespace and be monitored by at most one Debezium connector. |  | String
+| *camel.component.debezium-mysql.configuration.database-ssl-keystore* | Location of the Java keystore file containing an application process's own certificate and private key. |  | String
+| *camel.component.debezium-mysql.configuration.database-ssl-keystore-password* | Password to access the private key from the keystore file specified by 'ssl.keystore' configuration property or the 'javax.net.ssl.keyStore' system or JVM property. This password is used to unlock the keystore file (store password), and to decrypt the private key stored in the keystore (key password). |  | String
+| *camel.component.debezium-mysql.configuration.database-ssl-mode* | Whether to use an encrypted connection to MySQL. Options include'disabled' (the default) to use an unencrypted connection; 'preferred' to establish a secure (encrypted) connection if the server supports secure connections, but fall back to an unencrypted connection otherwise; 'required' to use a secure (encrypted) connection, and fail if one cannot be established; 'verify_ca' like 'required' but additionally verify the  [...]
+| *camel.component.debezium-mysql.configuration.database-ssl-truststore* | Location of the Java truststore file containing the collection of CA certificates trusted by this application process (trust store). |  | String
+| *camel.component.debezium-mysql.configuration.database-ssl-truststore-password* | Password to unlock the keystore file (store password) specified by 'ssl.trustore' configuration property or the 'javax.net.ssl.trustStore' system or JVM property. |  | String
+| *camel.component.debezium-mysql.configuration.database-user* | Name of the MySQL database user to be used when connecting to the database. |  | String
+| *camel.component.debezium-mysql.configuration.database-whitelist* | The databases for which changes are to be captured |  | String
+| *camel.component.debezium-mysql.configuration.decimal-handling-mode* | Specify how DECIMAL and NUMERIC columns should be represented in change events, including:'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the precisi [...]
+| *camel.component.debezium-mysql.configuration.enable-time-adjuster* | MySQL allows user to insert year value as either 2-digit or 4-digit. In case of two digit the value is automatically mapped into 1970 - 2069.false - delegates the implicit conversion to the databasetrue - (the default) Debezium makes the conversion | true | Boolean
+| *camel.component.debezium-mysql.configuration.event-deserialization-failure-handling-mode* | Specify how failures during deserialization of binlog events (i.e. when encountering a corrupted event) should be handled, including:'fail' (the default) an exception indicating the problematic event and its binlog position is raised, causing the connector to be stopped; 'warn' the problematic event and its binlog position will be logged and the event will be skipped;'ignore' the problematic ev [...]
+| *camel.component.debezium-mysql.configuration.gtid-new-channel-position* | If set to 'latest', when connector sees new GTID, it will start consuming gtid channel from the server latest executed gtid position. If 'earliest' connector starts reading channel from first available (not purged) gtid position on the server. | latest | String
+| *camel.component.debezium-mysql.configuration.gtid-source-excludes* | The source UUIDs used to exclude GTID ranges when determine the starting position in the MySQL server's binlog. |  | String
+| *camel.component.debezium-mysql.configuration.gtid-source-filter-dml-events* | If set to true, we will only produce DML events into Kafka for transactions that were written on mysql servers with UUIDs matching the filters defined by the gtid.source.includes or gtid.source.excludes configuration options, if they are specified. | true | Boolean
+| *camel.component.debezium-mysql.configuration.gtid-source-includes* | The source UUIDs used to include GTID ranges when determine the starting position in the MySQL server's binlog. |  | String
+| *camel.component.debezium-mysql.configuration.heartbeat-interval-ms* | Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default. | 0 | Integer
+| *camel.component.debezium-mysql.configuration.heartbeat-topics-prefix* | The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat. | __debezium-heartbeat | String
+| *camel.component.debezium-mysql.configuration.include-query* | Whether the connector should include the original SQL query that generated the change event. Note: This option requires MySQL be configured with the binlog_rows_query_log_events option set to ON. Query will not be present for events generated from snapshot. WARNING: Enabling this option may expose tables or fields explicitly blacklisted or masked by including the original SQL statement in the change event. For this reason t [...]
+| *camel.component.debezium-mysql.configuration.include-schema-changes* | Whether the connector should publish changes in the database schema to a Kafka topic with the same name as the database server ID. Each schema change will be recorded using a key that contains the database name and whose value includes the DDL statement(s).The default is 'true'. This is independent of how the connector internally records database history. | true | Boolean
+| *camel.component.debezium-mysql.configuration.inconsistent-schema-handling-mode* | Specify how binlog events that belong to a table missing from internal schema representation (i.e. internal representation is not consistent with database) should be handled, including:'fail' (the default) an exception indicating the problematic event and its binlog position is raised, causing the connector to be stopped; 'warn' the problematic event and its binlog position will be logged and the event w [...]
+| *camel.component.debezium-mysql.configuration.max-batch-size* | Maximum size of each batch of source records. Defaults to 2048. | 2048 | Integer
+| *camel.component.debezium-mysql.configuration.max-queue-size* | Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size. | 8192 | Integer
+| *camel.component.debezium-mysql.configuration.message-key-columns* | A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':',where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector,and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key configur [...]
+| *camel.component.debezium-mysql.configuration.poll-interval-ms* | Frequency in milliseconds to wait for new change events to appear after receiving no events. Defaults to 500ms. | 500 | Long
+| *camel.component.debezium-mysql.configuration.snapshot-delay-ms* | The number of milliseconds to delay before a snapshot will begin. | 0 | Long
+| *camel.component.debezium-mysql.configuration.snapshot-fetch-size* | The maximum number of records that should be loaded into memory while performing a snapshot |  | Integer
+| *camel.component.debezium-mysql.configuration.snapshot-locking-mode* | Controls how long the connector holds onto the global read lock while it is performing a snapshot. The default is 'minimal', which means the connector holds the global read lock (and thus prevents any updates) for just the initial portion of the snapshot while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from each table, and this can be done usi [...]
+| *camel.component.debezium-mysql.configuration.snapshot-mode* | The criteria for running a snapshot upon startup of the connector. Options include: 'when_needed' to specify that the connector run a snapshot upon startup whenever it deems it necessary; 'initial' (the default) to specify the connector can run a snapshot only when no offsets are available for the logical server name; 'initial_only' same as 'initial' except the connector should stop after completing the snapshot and before  [...]
+| *camel.component.debezium-mysql.configuration.snapshot-new-tables* | BETA FEATURE: On connector restart, the connector will check if there have been any new tables added to the configuration, and snapshot them. There is presently only two options:'off': Default behavior. Do not snapshot new tables.'parallel': The snapshot of the new tables will occur in parallel to the continued binlog reading of the old tables. When the snapshot completes, an independent binlog reader will begin readi [...]
+| *camel.component.debezium-mysql.configuration.snapshot-select-statement-overrides* | This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on thespecific connectors . Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NAME. [...]
+| *camel.component.debezium-mysql.configuration.source-struct-version* | A version of the format of the publicly visible source part in the message | v2 | String
+| *camel.component.debezium-mysql.configuration.table-blacklist* | Description is not available here, please check Debezium website for corresponding key 'table.blacklist' description. |  | String
+| *camel.component.debezium-mysql.configuration.table-ignore-builtin* | Flag specifying whether built-in tables should be ignored. | true | Boolean
+| *camel.component.debezium-mysql.configuration.table-whitelist* | The tables for which changes are to be captured |  | String
+| *camel.component.debezium-mysql.configuration.time-precision-mode* | Time, date and timestamps can be represented with different kinds of precisions, including:'adaptive_time_microseconds': the precision of date and timestamp values is based the database column's precision; but time fields always use microseconds precision;'connect': always represents time, date and timestamp values using Kafka Connect's built-in representations for Time, Date, and Timestamp, which uses millisecond pre [...]
+| *camel.component.debezium-mysql.configuration.tombstones-on-delete* | Whether delete operations should be represented by a delete event and a subsquenttombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted. | false | Boolean
+| *camel.component.debezium-mysql.enabled* | Whether to enable auto configuration of the debezium-mysql component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-debezium-postgres-starter/src/main/docs/debezium-postgres-starter.adoc b/components-starter/camel-debezium-postgres-starter/src/main/docs/debezium-postgres-starter.adoc
new file mode 100644
index 0000000..5285b9d
--- /dev/null
+++ b/components-starter/camel-debezium-postgres-starter/src/main/docs/debezium-postgres-starter.adoc
@@ -0,0 +1,77 @@
+== debezium-postgres - Spring Boot Auto-Configuration
+
+When using debezium-postgres with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-debezium-postgres-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 53 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.debezium-postgres.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.debezium-postgres.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.debezium-postgres.configuration.column-blacklist* | Description is not available here, please check Debezium website for corresponding key 'column.blacklist' description. |  | String
+| *camel.component.debezium-postgres.configuration.database-dbname* | The name of the database the connector should be monitoring |  | String
+| *camel.component.debezium-postgres.configuration.database-history-file-filename* | The path to the file that will be used to record the database history |  | String
+| *camel.component.debezium-postgres.configuration.database-hostname* | Resolvable hostname or IP address of the Postgres database server. |  | String
+| *camel.component.debezium-postgres.configuration.database-initial-statements* | A semicolon separated list of SQL statements to be executed when a JDBC connection to the database is established. Note that the connector may establish JDBC connections at its own discretion, so this should typically be used for configurationof session parameters only, but not for executing DML statements. Use doubled semicolon (';;') to use a semicolon as a character and not as a delimiter. |  | String
+| *camel.component.debezium-postgres.configuration.database-password* | Password of the Postgres database user to be used when connecting to the database. |  | String
+| *camel.component.debezium-postgres.configuration.database-port* | Port of the Postgres database server. | 5432 | Integer
+| *camel.component.debezium-postgres.configuration.database-server-name* | Unique name that identifies the database server and all recorded offsets, and that is used as a prefix for all schemas and topics. Each distinct installation should have a separate namespace and be monitored by at most one Debezium connector. |  | String
+| *camel.component.debezium-postgres.configuration.database-sslcert* | File containing the SSL Certificate for the client. See the Postgres SSL docs for further information |  | String
+| *camel.component.debezium-postgres.configuration.database-sslfactory* | A name of class to that creates SSL Sockets. Use org.postgresql.ssl.NonValidatingFactory to disable SSL validation in development environments |  | String
+| *camel.component.debezium-postgres.configuration.database-sslkey* | File containing the SSL private key for the client. See the Postgres SSL docs for further information |  | String
+| *camel.component.debezium-postgres.configuration.database-sslmode* | Whether to use an encrypted connection to Postgres. Options include'disable' (the default) to use an unencrypted connection; 'require' to use a secure (encrypted) connection, and fail if one cannot be established; 'verify-ca' like 'required' but additionally verify the server TLS certificate against the configured Certificate Authority (CA) certificates, or fail if no valid matching CA certificates are found; or'verif [...]
+| *camel.component.debezium-postgres.configuration.database-sslpassword* | Password to access the client private key from the file specified by 'database.sslkey'. See the Postgres SSL docs for further information |  | String
+| *camel.component.debezium-postgres.configuration.database-sslrootcert* | File containing the root certificate(s) against which the server is validated. See the Postgres JDBC SSL docs for further information |  | String
+| *camel.component.debezium-postgres.configuration.database-tcpkeepalive* | Enable or disable TCP keep-alive probe to avoid dropping TCP connection | true | Boolean
+| *camel.component.debezium-postgres.configuration.database-user* | Name of the Postgres database user to be used when connecting to the database. |  | String
+| *camel.component.debezium-postgres.configuration.decimal-handling-mode* | Specify how DECIMAL and NUMERIC columns should be represented in change events, including:'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the prec [...]
+| *camel.component.debezium-postgres.configuration.heartbeat-interval-ms* | Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default. | 0 | Integer
+| *camel.component.debezium-postgres.configuration.heartbeat-topics-prefix* | The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat. | __debezium-heartbeat | String
+| *camel.component.debezium-postgres.configuration.hstore-handling-mode* | Specify how HSTORE columns should be represented in change events, including:'json' represents values as json string'map' (default) represents values using java.util.Map | json | String
+| *camel.component.debezium-postgres.configuration.include-unknown-datatypes* | Specify whether the fields of data type not supported by Debezium should be processed:'false' (the default) omits the fields; 'true' converts the field into an implementation dependent binary representation. | false | Boolean
+| *camel.component.debezium-postgres.configuration.interval-handling-mode* | Specify how INTERVAL columns should be represented in change events, including:'string' represents values as an exact ISO formatted string'numeric' (default) represents values using the inexact conversion into microseconds | numeric | String
+| *camel.component.debezium-postgres.configuration.max-batch-size* | Maximum size of each batch of source records. Defaults to 2048. | 2048 | Integer
+| *camel.component.debezium-postgres.configuration.max-queue-size* | Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size. | 8192 | Integer
+| *camel.component.debezium-postgres.configuration.message-key-columns* | A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':',where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector,and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key confi [...]
+| *camel.component.debezium-postgres.configuration.plugin-name* | The name of the Postgres logical decoding plugin installed on the server. Supported values are 'decoderbufs' and 'wal2json'. Defaults to 'decoderbufs'. | decoderbufs | String
+| *camel.component.debezium-postgres.configuration.poll-interval-ms* | Frequency in milliseconds to wait for new change events to appear after receiving no events. Defaults to 500ms. | 500 | Long
+| *camel.component.debezium-postgres.configuration.publication-name* | The name of the Postgres 10 publication used for streaming changes from a plugin.Defaults to 'dbz_publication' | dbz_publication | String
+| *camel.component.debezium-postgres.configuration.schema-blacklist* | The schemas for which events must not be captured |  | String
+| *camel.component.debezium-postgres.configuration.schema-refresh-mode* | Specify the conditions that trigger a refresh of the in-memory schema for a table. 'columns_diff' (the default) is the safest mode, ensuring the in-memory schema stays in-sync with the database table's schema at all times. 'columns_diff_exclude_unchanged_toast' instructs the connector to refresh the in-memory schema cache if there is a discrepancy between it and the schema derived from the incoming message, unless  [...]
+| *camel.component.debezium-postgres.configuration.schema-whitelist* | The schemas for which events should be captured |  | String
+| *camel.component.debezium-postgres.configuration.slot-drop-on-stop* | Whether or not to drop the logical replication slot when the connector finishes orderlyBy default the replication is kept so that on restart progress can resume from the last recorded location | false | Boolean
+| *camel.component.debezium-postgres.configuration.slot-max-retries* | How many times to retry connecting to a replication slot when an attempt fails. | 6 | Integer
+| *camel.component.debezium-postgres.configuration.slot-name* | The name of the Postgres logical decoding slot created for streaming changes from a plugin.Defaults to 'debezium | debezium | String
+| *camel.component.debezium-postgres.configuration.slot-retry-delay-ms* | The number of milli-seconds to wait between retry attempts when the connector fails to connect to a replication slot. | 10000 | Long
+| *camel.component.debezium-postgres.configuration.slot-stream-params* | Any optional parameters used by logical decoding plugin. Semi-colon separated. E.g. 'add-tables=public.table,public.table2;include-lsn=true' |  | String
+| *camel.component.debezium-postgres.configuration.snapshot-custom-class* | When 'snapshot.mode' is set as custom, this setting must be set to specify a fully qualified class name to load (via the default class loader).This class must implement the 'Snapshotter' interface and is called on each app boot to determine whether to do a snapshot and how to build queries. |  | String
+| *camel.component.debezium-postgres.configuration.snapshot-delay-ms* | The number of milliseconds to delay before a snapshot will begin. | 0 | Long
+| *camel.component.debezium-postgres.configuration.snapshot-fetch-size* | The maximum number of records that should be loaded into memory while performing a snapshot |  | Integer
+| *camel.component.debezium-postgres.configuration.snapshot-lock-timeout-ms* | The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds | 10000 | Long
+| *camel.component.debezium-postgres.configuration.snapshot-mode* | The criteria for running a snapshot upon startup of the connector. Options include: 'always' to specify that the connector run a snapshot each time it starts up; 'initial' (the default) to specify the connector can run a snapshot only when no offsets are available for the logical server name; 'initial_only' same as 'initial' except the connector should stop after completing the snapshot and before it would normally start [...]
+| *camel.component.debezium-postgres.configuration.snapshot-select-statement-overrides* | This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on thespecific connectors . Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_NA [...]
+| *camel.component.debezium-postgres.configuration.source-struct-version* | A version of the format of the publicly visible source part in the message | v2 | String
+| *camel.component.debezium-postgres.configuration.status-update-interval-ms* | Frequency in milliseconds for sending replication connection status updates to the server. Defaults to 10 seconds (10000 ms). | 10000 | Integer
+| *camel.component.debezium-postgres.configuration.table-blacklist* | Description is not available here, please check Debezium website for corresponding key 'table.blacklist' description. |  | String
+| *camel.component.debezium-postgres.configuration.table-whitelist* | The tables for which changes are to be captured |  | String
+| *camel.component.debezium-postgres.configuration.time-precision-mode* | Time, date, and timestamps can be represented with different kinds of precisions, including:'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision;'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations  [...]
+| *camel.component.debezium-postgres.configuration.toasted-value-placeholder* | Specify the constant that will be provided by Debezium to indicate that the original value is a toasted value not provided by the database.If starts with 'hex:' prefix it is expected that the rest of the string repesents hexadecimally encoded octets. | __debezium_unavailable_value | String
+| *camel.component.debezium-postgres.configuration.tombstones-on-delete* | Whether delete operations should be represented by a delete event and a subsquenttombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted. | false | Boolean
+| *camel.component.debezium-postgres.configuration.xmin-fetch-interval-ms* | Specify how often (in ms) the xmin will be fetched from the replication slot. This xmin value is exposed by the slot which gives a lower bound of where a new replication slot could start from. The lower the value, the more likely this value is to be the current 'true' value, but the bigger the performance cost. The bigger the value, the less likely this value is to be the current 'true' value, but the lower the  [...]
+| *camel.component.debezium-postgres.enabled* | Whether to enable auto configuration of the debezium-postgres component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-debezium-sqlserver-starter/src/main/docs/debezium-sqlserver-starter.adoc b/components-starter/camel-debezium-sqlserver-starter/src/main/docs/debezium-sqlserver-starter.adoc
new file mode 100644
index 0000000..a25d009
--- /dev/null
+++ b/components-starter/camel-debezium-sqlserver-starter/src/main/docs/debezium-sqlserver-starter.adoc
@@ -0,0 +1,59 @@
+== debezium-sqlserver - Spring Boot Auto-Configuration
+
+When using debezium-sqlserver with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-debezium-sqlserver-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 35 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.debezium-sqlserver.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.debezium-sqlserver.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.debezium-sqlserver.configuration.column-blacklist* | Description is not available here, please check Debezium website for corresponding key 'column.blacklist' description. |  | String
+| *camel.component.debezium-sqlserver.configuration.database-dbname* | The name of the database the connector should be monitoring. When working with a multi-tenant set-up, must be set to the CDB name. |  | String
+| *camel.component.debezium-sqlserver.configuration.database-history* | The name of the DatabaseHistory class that should be used to store and recover database schema changes. The configuration properties for the history are prefixed with the 'database.history.' string. | io.debezium.relational.history.FileDatabaseHistory | String
+| *camel.component.debezium-sqlserver.configuration.database-history-file-filename* | The path to the file that will be used to record the database history |  | String
+| *camel.component.debezium-sqlserver.configuration.database-history-kafka-bootstrap-servers* | A list of host/port pairs that the connector will use for establishing the initial connection to the Kafka cluster for retrieving database schema history previously stored by the connector. This should point to the same Kafka cluster used by the Kafka Connect process. |  | String
+| *camel.component.debezium-sqlserver.configuration.database-history-kafka-recovery-attempts* | The number of attempts in a row that no data are returned from Kafka before recover completes. The maximum amount of time to wait after receiving no data is (recovery.attempts) x (recovery.poll.interval.ms). | 100 | Integer
+| *camel.component.debezium-sqlserver.configuration.database-history-kafka-recovery-poll-interval-ms* | The number of milliseconds to wait while polling for persisted data during recovery. | 100 | Integer
+| *camel.component.debezium-sqlserver.configuration.database-history-kafka-topic* | The name of the topic for the database schema history |  | String
+| *camel.component.debezium-sqlserver.configuration.database-hostname* | Resolvable hostname or IP address of the SQL Server database server. |  | String
+| *camel.component.debezium-sqlserver.configuration.database-password* | Password of the SQL Server database user to be used when connecting to the database. |  | String
+| *camel.component.debezium-sqlserver.configuration.database-port* | Port of the SQL Server database server. | 1433 | Integer
+| *camel.component.debezium-sqlserver.configuration.database-server-name* | Unique name that identifies the database server and all recorded offsets, and that is used as a prefix for all schemas and topics. Each distinct installation should have a separate namespace and be monitored by at most one Debezium connector. |  | String
+| *camel.component.debezium-sqlserver.configuration.database-server-timezone* | The timezone of the server used to correctly shift the commit transaction timestamp on the client sideOptions include: Any valid Java ZoneId |  | String
+| *camel.component.debezium-sqlserver.configuration.database-user* | Name of the SQL Server database user to be used when connecting to the database. |  | String
+| *camel.component.debezium-sqlserver.configuration.decimal-handling-mode* | Specify how DECIMAL and NUMERIC columns should be represented in change events, including:'precise' (the default) uses java.math.BigDecimal to represent values, which are encoded in the change events using a binary representation and Kafka Connect's 'org.apache.kafka.connect.data.Decimal' type; 'string' uses string to represent values; 'double' represents values using Java's 'double', which may not offer the pre [...]
+| *camel.component.debezium-sqlserver.configuration.heartbeat-interval-ms* | Length of an interval in milli-seconds in in which the connector periodically sends heartbeat messages to a heartbeat topic. Use 0 to disable heartbeat messages. Disabled by default. | 0 | Integer
+| *camel.component.debezium-sqlserver.configuration.heartbeat-topics-prefix* | The prefix that is used to name heartbeat topics.Defaults to __debezium-heartbeat. | __debezium-heartbeat | String
+| *camel.component.debezium-sqlserver.configuration.max-batch-size* | Maximum size of each batch of source records. Defaults to 2048. | 2048 | Integer
+| *camel.component.debezium-sqlserver.configuration.max-queue-size* | Maximum size of the queue for change events read from the database log but not yet recorded or forwarded. Defaults to 8192, and should always be larger than the maximum batch size. | 8192 | Integer
+| *camel.component.debezium-sqlserver.configuration.message-key-columns* | A semicolon-separated list of expressions that match fully-qualified tables and column(s) to be used as message key. Each expression must match the pattern ':',where the table names could be defined as (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on the specific connector,and the key columns are a comma-separated list of columns representing the custom key. For any table without an explicit key conf [...]
+| *camel.component.debezium-sqlserver.configuration.poll-interval-ms* | Frequency in milliseconds to wait for new change events to appear after receiving no events. Defaults to 500ms. | 500 | Long
+| *camel.component.debezium-sqlserver.configuration.snapshot-delay-ms* | The number of milliseconds to delay before a snapshot will begin. | 0 | Long
+| *camel.component.debezium-sqlserver.configuration.snapshot-fetch-size* | The maximum number of records that should be loaded into memory while performing a snapshot |  | Integer
+| *camel.component.debezium-sqlserver.configuration.snapshot-lock-timeout-ms* | The maximum number of millis to wait for table locks at the beginning of a snapshot. If locks cannot be acquired in this time frame, the snapshot will be aborted. Defaults to 10 seconds | 10000 | Long
+| *camel.component.debezium-sqlserver.configuration.snapshot-mode* | The criteria for running a snapshot upon startup of the connector. Options include: 'initial' (the default) to specify the connector should run a snapshot only when no offsets are available for the logical server name; 'schema_only' to specify the connector should run a snapshot of the schema when no offsets are available for the logical server name. | initial | String
+| *camel.component.debezium-sqlserver.configuration.snapshot-select-statement-overrides* | This property contains a comma-separated list of fully-qualified tables (DB_NAME.TABLE_NAME) or (SCHEMA_NAME.TABLE_NAME), depending on thespecific connectors . Select statements for the individual tables are specified in further configuration properties, one for each table, identified by the id 'snapshot.select.statement.overrides.DB_NAME.TABLE_NAME' or 'snapshot.select.statement.overrides.SCHEMA_N [...]
+| *camel.component.debezium-sqlserver.configuration.source-struct-version* | A version of the format of the publicly visible source part in the message | v2 | String
+| *camel.component.debezium-sqlserver.configuration.table-blacklist* | Description is not available here, please check Debezium website for corresponding key 'table.blacklist' description. |  | String
+| *camel.component.debezium-sqlserver.configuration.table-ignore-builtin* | Flag specifying whether built-in tables should be ignored. | true | Boolean
+| *camel.component.debezium-sqlserver.configuration.table-whitelist* | The tables for which changes are to be captured |  | String
+| *camel.component.debezium-sqlserver.configuration.time-precision-mode* | Time, date, and timestamps can be represented with different kinds of precisions, including:'adaptive' (the default) bases the precision of time, date, and timestamp values on the database column's precision; 'adaptive_time_microseconds' like 'adaptive' mode, but TIME fields always use microseconds precision;'connect' always represents time, date, and timestamp values using Kafka Connect's built-in representations [...]
+| *camel.component.debezium-sqlserver.configuration.tombstones-on-delete* | Whether delete operations should be represented by a delete event and a subsquenttombstone event (true) or only by a delete event (false). Emitting the tombstone event (the default behavior) allows Kafka to completely delete all events pertaining to the given key once the source record got deleted. | false | Boolean
+| *camel.component.debezium-sqlserver.enabled* | Whether to enable auto configuration of the debezium-sqlserver component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-digitalocean-starter/src/main/docs/digitalocean-starter.adoc b/components-starter/camel-digitalocean-starter/src/main/docs/digitalocean-starter.adoc
new file mode 100644
index 0000000..a1e22d2
--- /dev/null
+++ b/components-starter/camel-digitalocean-starter/src/main/docs/digitalocean-starter.adoc
@@ -0,0 +1,27 @@
+== digitalocean - Spring Boot Auto-Configuration
+
+When using digitalocean with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-digitalocean-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.digitalocean.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.digitalocean.enabled* | Whether to enable auto configuration of the digitalocean component. This is enabled by default. |  | Boolean
+| *camel.component.digitalocean.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+|===
+
diff --git a/components-starter/camel-direct-starter/src/main/docs/direct-starter.adoc b/components-starter/camel-direct-starter/src/main/docs/direct-starter.adoc
new file mode 100644
index 0000000..34b5e98
--- /dev/null
+++ b/components-starter/camel-direct-starter/src/main/docs/direct-starter.adoc
@@ -0,0 +1,30 @@
+== direct - Spring Boot Auto-Configuration
+
+When using direct with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-direct-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.direct.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.direct.block* | If sending a message to a direct endpoint which has no active consumer, then we can tell the producer to block and wait for the consumer to become active. | true | Boolean
+| *camel.component.direct.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.direct.enabled* | Whether to enable auto configuration of the direct component. This is enabled by default. |  | Boolean
+| *camel.component.direct.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.component.direct.timeout* | The timeout value to use if block is enabled. | 30000 | Long
+|===
+
diff --git a/components-starter/camel-directvm-starter/src/main/docs/directvm-starter.adoc b/components-starter/camel-directvm-starter/src/main/docs/directvm-starter.adoc
new file mode 100644
index 0000000..168fdec
--- /dev/null
+++ b/components-starter/camel-directvm-starter/src/main/docs/directvm-starter.adoc
@@ -0,0 +1,32 @@
+== directvm - Spring Boot Auto-Configuration
+
+When using directvm with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-directvm-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 8 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.direct-vm.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.direct-vm.block* | If sending a message to a direct endpoint which has no active consumer, then we can tell the producer to block and wait for the consumer to become active. | true | Boolean
+| *camel.component.direct-vm.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.direct-vm.enabled* | Whether to enable auto configuration of the direct-vm component. This is enabled by default. |  | Boolean
+| *camel.component.direct-vm.header-filter-strategy* | Sets a HeaderFilterStrategy that will only be applied on producer endpoints (on both directions: request and response). Default value: none. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.direct-vm.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed  [...]
+| *camel.component.direct-vm.propagate-properties* | Whether to propagate or not properties from the producer side to the consumer side, and vice versa. Default value: true. | true | Boolean
+| *camel.component.direct-vm.timeout* | The timeout value to use if block is enabled. | 30000 | Long
+|===
+
diff --git a/components-starter/camel-disruptor-starter/src/main/docs/disruptor-starter.adoc b/components-starter/camel-disruptor-starter/src/main/docs/disruptor-starter.adoc
new file mode 100644
index 0000000..a492f97
--- /dev/null
+++ b/components-starter/camel-disruptor-starter/src/main/docs/disruptor-starter.adoc
@@ -0,0 +1,46 @@
+== disruptor - Spring Boot Auto-Configuration
+
+When using disruptor with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-disruptor-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 22 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.disruptor-vm.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.disruptor-vm.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.disruptor-vm.buffer-size* | To configure the ring buffer size | 1024 | Integer
+| *camel.component.disruptor-vm.default-block-when-full* | To configure the default value for block when full The default value is true. | true | Boolean
+| *camel.component.disruptor-vm.default-concurrent-consumers* | To configure the default number of concurrent consumers | 1 | Integer
+| *camel.component.disruptor-vm.default-multiple-consumers* | To configure the default value for multiple consumers | false | Boolean
+| *camel.component.disruptor-vm.default-producer-type* | To configure the default value for DisruptorProducerType The default value is Multi. |  | DisruptorProducerType
+| *camel.component.disruptor-vm.default-wait-strategy* | To configure the default value for DisruptorWaitStrategy The default value is Blocking. |  | DisruptorWaitStrategy
+| *camel.component.disruptor-vm.enabled* | Whether to enable auto configuration of the disruptor-vm component. This is enabled by default. |  | Boolean
+| *camel.component.disruptor-vm.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.disruptor.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.disruptor.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.disruptor.buffer-size* | To configure the ring buffer size | 1024 | Integer
+| *camel.component.disruptor.default-block-when-full* | To configure the default value for block when full The default value is true. | true | Boolean
+| *camel.component.disruptor.default-concurrent-consumers* | To configure the default number of concurrent consumers | 1 | Integer
+| *camel.component.disruptor.default-multiple-consumers* | To configure the default value for multiple consumers | false | Boolean
+| *camel.component.disruptor.default-producer-type* | To configure the default value for DisruptorProducerType The default value is Multi. |  | DisruptorProducerType
+| *camel.component.disruptor.default-wait-strategy* | To configure the default value for DisruptorWaitStrategy The default value is Blocking. |  | DisruptorWaitStrategy
+| *camel.component.disruptor.enabled* | Whether to enable auto configuration of the disruptor component. This is enabled by default. |  | Boolean
+| *camel.component.disruptor.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed  [...]
+| *camel.component.disruptor-vm.queue-size* | *Deprecated* To configure the ring buffer size |  | Integer
+| *camel.component.disruptor.queue-size* | *Deprecated* To configure the ring buffer size |  | Integer
+|===
+
diff --git a/components-starter/camel-dns-starter/src/main/docs/dns-starter.adoc b/components-starter/camel-dns-starter/src/main/docs/dns-starter.adoc
new file mode 100644
index 0000000..3ce1ec9
--- /dev/null
+++ b/components-starter/camel-dns-starter/src/main/docs/dns-starter.adoc
@@ -0,0 +1,27 @@
+== dns - Spring Boot Auto-Configuration
+
+When using dns with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-dns-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.dns.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.dns.enabled* | Whether to enable auto configuration of the dns component. This is enabled by default. |  | Boolean
+| *camel.component.dns.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-docker-starter/src/main/docs/docker-starter.adoc b/components-starter/camel-docker-starter/src/main/docs/docker-starter.adoc
new file mode 100644
index 0000000..fb1d65a
--- /dev/null
+++ b/components-starter/camel-docker-starter/src/main/docs/docker-starter.adoc
@@ -0,0 +1,46 @@
+== docker - Spring Boot Auto-Configuration
+
+When using docker with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-docker-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 22 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.docker.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.docker.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.docker.configuration.cert-path* | Location containing the SSL certificate chain |  | String
+| *camel.component.docker.configuration.cmd-exec-factory* | The fully qualified class name of the DockerCmdExecFactory implementation to use | com.github.dockerjava.netty.NettyDockerCmdExecFactory | String
+| *camel.component.docker.configuration.email* | Email address associated with the user |  | String
+| *camel.component.docker.configuration.follow-redirect-filter* | Whether to follow redirect filter | false | Boolean
+| *camel.component.docker.configuration.host* | Docker host | localhost | String
+| *camel.component.docker.configuration.logging-filter* | Whether to use logging filter | false | Boolean
+| *camel.component.docker.configuration.max-per-route-connections* | Maximum route connections | 100 | Integer
+| *camel.component.docker.configuration.max-total-connections* | Maximum total connections | 100 | Integer
+| *camel.component.docker.configuration.operation* | Which operation to use |  | DockerOperation
+| *camel.component.docker.configuration.parameters* |  |  | Map
+| *camel.component.docker.configuration.password* | Password to authenticate with |  | String
+| *camel.component.docker.configuration.port* | Docker port | 2375 | Integer
+| *camel.component.docker.configuration.request-timeout* | Request timeout for response (in seconds) |  | Integer
+| *camel.component.docker.configuration.secure* | Use HTTPS communication | false | Boolean
+| *camel.component.docker.configuration.server-address* | Server address for docker registry. | https://index.docker.io/v1/ | String
+| *camel.component.docker.configuration.socket* | Socket connection mode | true | Boolean
+| *camel.component.docker.configuration.tls-verify* | Check TLS | false | Boolean
+| *camel.component.docker.configuration.username* | User name to authenticate with |  | String
+| *camel.component.docker.enabled* | Whether to enable auto configuration of the docker component. This is enabled by default. |  | Boolean
+| *camel.component.docker.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-dozer-starter/src/main/docs/dozer-starter.adoc b/components-starter/camel-dozer-starter/src/main/docs/dozer-starter.adoc
new file mode 100644
index 0000000..b77a3e3
--- /dev/null
+++ b/components-starter/camel-dozer-starter/src/main/docs/dozer-starter.adoc
@@ -0,0 +1,27 @@
+== dozer - Spring Boot Auto-Configuration
+
+When using dozer with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-dozer-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.dozer.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.dozer.enabled* | Whether to enable auto configuration of the dozer component. This is enabled by default. |  | Boolean
+| *camel.component.dozer.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+|===
+
diff --git a/components-starter/camel-drill-starter/src/main/docs/drill-starter.adoc b/components-starter/camel-drill-starter/src/main/docs/drill-starter.adoc
new file mode 100644
index 0000000..2d74b3d
--- /dev/null
+++ b/components-starter/camel-drill-starter/src/main/docs/drill-starter.adoc
@@ -0,0 +1,27 @@
+== drill - Spring Boot Auto-Configuration
+
+When using drill with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-drill-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.drill.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.drill.enabled* | Whether to enable auto configuration of the drill component. This is enabled by default. |  | Boolean
+| *camel.component.drill.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+|===
+
diff --git a/components-starter/camel-dropbox-starter/src/main/docs/dropbox-starter.adoc b/components-starter/camel-dropbox-starter/src/main/docs/dropbox-starter.adoc
new file mode 100644
index 0000000..8ff1c59
--- /dev/null
+++ b/components-starter/camel-dropbox-starter/src/main/docs/dropbox-starter.adoc
@@ -0,0 +1,28 @@
+== dropbox - Spring Boot Auto-Configuration
+
+When using dropbox with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-dropbox-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.dropbox.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.dropbox.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.dropbox.enabled* | Whether to enable auto configuration of the dropbox component. This is enabled by default. |  | Boolean
+| *camel.component.dropbox.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-ehcache-starter/src/main/docs/ehcache-starter.adoc b/components-starter/camel-ehcache-starter/src/main/docs/ehcache-starter.adoc
new file mode 100644
index 0000000..f7b8ebd
--- /dev/null
+++ b/components-starter/camel-ehcache-starter/src/main/docs/ehcache-starter.adoc
@@ -0,0 +1,51 @@
+== ehcache - Spring Boot Auto-Configuration
+
+When using ehcache with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ehcache-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 27 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ehcache.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ehcache.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.ehcache.cache-configuration* | The default cache configuration to be used to create caches. The option is a org.ehcache.config.CacheConfiguration type. |  | String
+| *camel.component.ehcache.cache-configuration-uri* | URI pointing to the Ehcache XML configuration file's location |  | String
+| *camel.component.ehcache.cache-manager* | The cache manager. The option is a org.ehcache.CacheManager type. |  | String
+| *camel.component.ehcache.cache-manager-configuration* | The cache manager configuration. The option is a org.ehcache.config.Configuration type. |  | String
+| *camel.component.ehcache.caches-configurations* | A map of caches configurations to be used to create caches. |  | Map
+| *camel.component.ehcache.configuration.action* | To configure the default cache action. If an action is set in the message header, then the operation from the header takes precedence. |  | String
+| *camel.component.ehcache.configuration.cache-manager* | The cache manager |  | CacheManager
+| *camel.component.ehcache.configuration.cache-manager-configuration* | The cache manager configuration |  | Configuration
+| *camel.component.ehcache.configuration.configuration* | The default cache configuration to be used to create caches. |  | CacheConfiguration
+| *camel.component.ehcache.configuration.configuration-uri* | URI pointing to the Ehcache XML configuration file's location |  | String
+| *camel.component.ehcache.configuration.configurations* | A map of cache configuration to be used to create caches. |  | Map
+| *camel.component.ehcache.configuration.create-cache-if-not-exist* | Configure if a cache need to be created if it does exist or can't be pre-configured. | true | Boolean
+| *camel.component.ehcache.configuration.event-firing* | Set the delivery mode (synchronous, asynchronous) |  | EventFiring
+| *camel.component.ehcache.configuration.event-ordering* | Set the delivery mode (ordered, unordered) |  | EventOrdering
+| *camel.component.ehcache.configuration.event-types* | Set the type of events to listen for (EVICTED,EXPIRED,REMOVED,CREATED,UPDATED). You can specify multiple entries separated by comma. |  | String
+| *camel.component.ehcache.configuration.key* | To configure the default action key. If a key is set in the message header, then the key from the header takes precedence. |  | Object
+| *camel.component.ehcache.configuration.key-type* | The cache key type, default java.lang.Object |  | String
+| *camel.component.ehcache.configuration.value-type* | The cache value type, default java.lang.Object |  | String
+| *camel.component.ehcache.customizer.cache-configuration.enabled* | Enable or disable the cache-configuration customizer. | true | Boolean
+| *camel.component.ehcache.customizer.cache-configuration.mode* | Configure if the cache configurations have be added or they have to replace those already configured on the component. |  | CacheConfigurationCustomizerConfiguration$Mode
+| *camel.component.ehcache.customizer.cache-manager.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.ehcache.customizer.cache-manager.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.ehcache.enabled* | Whether to enable auto configuration of the ehcache component. This is enabled by default. |  | Boolean
+| *camel.component.ehcache.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.ehcache.configuration.config-uri* | *Deprecated*  |  | String
+|===
+
diff --git a/components-starter/camel-elasticsearch-rest-starter/src/main/docs/elasticsearch-rest-starter.adoc b/components-starter/camel-elasticsearch-rest-starter/src/main/docs/elasticsearch-rest-starter.adoc
new file mode 100644
index 0000000..2b8c481
--- /dev/null
+++ b/components-starter/camel-elasticsearch-rest-starter/src/main/docs/elasticsearch-rest-starter.adoc
@@ -0,0 +1,38 @@
+== elasticsearch-rest - Spring Boot Auto-Configuration
+
+When using elasticsearch-rest with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-elasticsearch-rest-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.elasticsearch-rest.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.elasticsearch-rest.client* | To use an existing configured Elasticsearch client, instead of creating a client per endpoint. This allow to customize the client with specific settings. The option is a org.elasticsearch.client.RestClient type. |  | String
+| *camel.component.elasticsearch-rest.connection-timeout* | The time in ms to wait before connection will timeout. | 30000 | Integer
+| *camel.component.elasticsearch-rest.enable-s-s-l* | Enable SSL | false | Boolean
+| *camel.component.elasticsearch-rest.enable-sniffer* | Enable automatically discover nodes from a running Elasticsearch cluster | false | Boolean
+| *camel.component.elasticsearch-rest.enabled* | Whether to enable auto configuration of the elasticsearch-rest component. This is enabled by default. |  | Boolean
+| *camel.component.elasticsearch-rest.host-addresses* | Comma separated list with ip:port formatted remote transport addresses to use. The ip and port options must be left blank for hostAddresses to be considered instead. |  | String
+| *camel.component.elasticsearch-rest.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is p [...]
+| *camel.component.elasticsearch-rest.max-retry-timeout* | The time in ms before retry | 30000 | Integer
+| *camel.component.elasticsearch-rest.password* | Password for authenticate |  | String
+| *camel.component.elasticsearch-rest.sniff-after-failure-delay* | The delay of a sniff execution scheduled after a failure (in milliseconds) | 60000 | Integer
+| *camel.component.elasticsearch-rest.sniffer-interval* | The interval between consecutive ordinary sniff executions in milliseconds. Will be honoured when sniffOnFailure is disabled or when there are no failures between consecutive sniff executions | 300000 | Integer
+| *camel.component.elasticsearch-rest.socket-timeout* | The timeout in ms to wait before the socket will timeout. | 30000 | Integer
+| *camel.component.elasticsearch-rest.user* | Basic authenticate user |  | String
+|===
+
diff --git a/components-starter/camel-elsql-starter/src/main/docs/elsql-starter.adoc b/components-starter/camel-elsql-starter/src/main/docs/elsql-starter.adoc
new file mode 100644
index 0000000..0a00c47
--- /dev/null
+++ b/components-starter/camel-elsql-starter/src/main/docs/elsql-starter.adoc
@@ -0,0 +1,32 @@
+== elsql - Spring Boot Auto-Configuration
+
+When using elsql with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-elsql-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 8 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.elsql.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.elsql.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.elsql.data-source* | Sets the DataSource to use to communicate with the database. The option is a javax.sql.DataSource type. |  | String
+| *camel.component.elsql.database-vendor* | To use a vendor specific com.opengamma.elsql.ElSqlConfig |  | ElSqlDatabaseVendor
+| *camel.component.elsql.el-sql-config* | To use a specific configured ElSqlConfig. It may be better to use the databaseVendor option instead. The option is a com.opengamma.elsql.ElSqlConfig type. |  | String
+| *camel.component.elsql.enabled* | Whether to enable auto configuration of the elsql component. This is enabled by default. |  | Boolean
+| *camel.component.elsql.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+| *camel.component.elsql.resource-uri* | The resource file which contains the elsql SQL statements to use. You can specify multiple resources separated by comma. The resources are loaded on the classpath by default, you can prefix with file: to load from file system. Notice you can set this option on the component and then you do not have to configure this on the endpoint. |  | String
+|===
+
diff --git a/components-starter/camel-elytron-starter/src/main/docs/elytron-starter.adoc b/components-starter/camel-elytron-starter/src/main/docs/elytron-starter.adoc
new file mode 100644
index 0000000..149edb7
--- /dev/null
+++ b/components-starter/camel-elytron-starter/src/main/docs/elytron-starter.adoc
@@ -0,0 +1,36 @@
+== elytron - Spring Boot Auto-Configuration
+
+When using elytron with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-elytron-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 12 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.elytron.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.elytron.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.elytron.elytron-provider* | Elytron security provider, has to support mechanism from parameter mechanismName. The option is a org.wildfly.security.WildFlyElytronBaseProvider type. |  | String
+| *camel.component.elytron.enabled* | Whether to enable auto configuration of the elytron component. This is enabled by default. |  | Boolean
+| *camel.component.elytron.host-options* | To configure common options, such as thread pools. The option is a org.apache.camel.component.undertow.UndertowHostOptions type. |  | String
+| *camel.component.elytron.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.elytron.mechanism-name* | Name of the mechanism, which will be used for selection of authentication mechanism. | BEARER_TOKEN | String
+| *camel.component.elytron.mute-exception* | If enabled and an Exchange failed processing on the consumer side the response's body won't contain the exception's stack trace. | false | Boolean
+| *camel.component.elytron.security-domain-builder* | Definition of Builder, which will be used for creation of security domain. The option is a org.wildfly.security.auth.server.SecurityDomain.Builder type. |  | String
+| *camel.component.elytron.ssl-context-parameters* | To configure security using SSLContextParameters. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.elytron.undertow-http-binding* | To use a custom HttpBinding to control the mapping between Camel message and HttpClient. The option is a org.apache.camel.component.undertow.UndertowHttpBinding type. |  | String
+| *camel.component.elytron.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-etcd-starter/src/main/docs/etcd-starter.adoc b/components-starter/camel-etcd-starter/src/main/docs/etcd-starter.adoc
new file mode 100644
index 0000000..1be089d
--- /dev/null
+++ b/components-starter/camel-etcd-starter/src/main/docs/etcd-starter.adoc
@@ -0,0 +1,43 @@
+== etcd - Spring Boot Auto-Configuration
+
+When using etcd with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-etcd-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 19 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.etcd.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.etcd.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.etcd.configuration.from-index* | The index to watch from | 0 | Long
+| *camel.component.etcd.configuration.password* | The password to use for basic authentication. |  | String
+| *camel.component.etcd.configuration.recursive* | To apply an action recursively. | false | Boolean
+| *camel.component.etcd.configuration.send-empty-exchange-on-timeout* | To send an empty message in case of timeout watching for a key. | false | Boolean
+| *camel.component.etcd.configuration.service-path* | The path to look for for service discovery | /services/ | String
+| *camel.component.etcd.configuration.ssl-context-parameters* | To configure security using SSLContextParameters. |  | SSLContextParameters
+| *camel.component.etcd.configuration.time-to-live* | To set the lifespan of a key in milliseconds. |  | Integer
+| *camel.component.etcd.configuration.timeout* | To set the maximum time an action could take to complete. |  | Long
+| *camel.component.etcd.configuration.uris* | To set the URIs the client connects. | http://localhost:2379,http://localhost:4001 | String
+| *camel.component.etcd.configuration.user-name* | The user name to use for basic authentication. |  | String
+| *camel.component.etcd.enabled* | Whether to enable auto configuration of the etcd component. This is enabled by default. |  | Boolean
+| *camel.component.etcd.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.etcd.password* | The password to use for basic authentication. |  | String
+| *camel.component.etcd.ssl-context-parameters* | To configure security using SSLContextParameters. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.etcd.uris* | To set the URIs the client connects. |  | String
+| *camel.component.etcd.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+| *camel.component.etcd.user-name* | The user name to use for basic authentication. |  | String
+|===
+
diff --git a/components-starter/camel-exec-starter/src/main/docs/exec-starter.adoc b/components-starter/camel-exec-starter/src/main/docs/exec-starter.adoc
new file mode 100644
index 0000000..b9edf11
--- /dev/null
+++ b/components-starter/camel-exec-starter/src/main/docs/exec-starter.adoc
@@ -0,0 +1,27 @@
+== exec - Spring Boot Auto-Configuration
+
+When using exec with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-exec-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.exec.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.exec.enabled* | Whether to enable auto configuration of the exec component. This is enabled by default. |  | Boolean
+| *camel.component.exec.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-facebook-starter/src/main/docs/facebook-starter.adoc b/components-starter/camel-facebook-starter/src/main/docs/facebook-starter.adoc
new file mode 100644
index 0000000..ac029bc
--- /dev/null
+++ b/components-starter/camel-facebook-starter/src/main/docs/facebook-starter.adoc
@@ -0,0 +1,55 @@
+== facebook - Spring Boot Auto-Configuration
+
+When using facebook with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-facebook-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 31 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.facebook.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.facebook.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.facebook.configuration.client-u-r-l* | Facebook4J API client URL |  | String
+| *camel.component.facebook.configuration.client-version* | Facebook4J client API version |  | String
+| *camel.component.facebook.configuration.debug-enabled* | Enables deubg output. Effective only with the embedded logger | false | Boolean
+| *camel.component.facebook.configuration.gzip-enabled* | Use Facebook GZIP encoding | true | Boolean
+| *camel.component.facebook.configuration.http-connection-timeout* | Http connection timeout in milliseconds | 20000 | Integer
+| *camel.component.facebook.configuration.http-default-max-per-route* | HTTP maximum connections per route | 2 | Integer
+| *camel.component.facebook.configuration.http-max-total-connections* | HTTP maximum total connections | 20 | Integer
+| *camel.component.facebook.configuration.http-proxy-host* | HTTP proxy server host name |  | String
+| *camel.component.facebook.configuration.http-proxy-password* | HTTP proxy server password |  | String
+| *camel.component.facebook.configuration.http-proxy-port* | HTTP proxy server port |  | Integer
+| *camel.component.facebook.configuration.http-proxy-user* | HTTP proxy server user name |  | String
+| *camel.component.facebook.configuration.http-read-timeout* | Http read timeout in milliseconds | 120000 | Integer
+| *camel.component.facebook.configuration.http-retry-count* | Number of HTTP retries | 0 | Integer
+| *camel.component.facebook.configuration.http-retry-interval-seconds* | HTTP retry interval in seconds | 5 | Integer
+| *camel.component.facebook.configuration.http-streaming-read-timeout* | HTTP streaming read timeout in milliseconds | 40000 | Integer
+| *camel.component.facebook.configuration.json-store-enabled* | If set to true, raw JSON forms will be stored in DataObjectFactory | false | Boolean
+| *camel.component.facebook.configuration.mbean-enabled* | If set to true, Facebook4J mbean will be registerd | false | Boolean
+| *camel.component.facebook.configuration.o-auth-access-token* | The user access token |  | String
+| *camel.component.facebook.configuration.o-auth-access-token-u-r-l* | OAuth access token URL | https://graph.facebook.com/oauth/access_token | String
+| *camel.component.facebook.configuration.o-auth-app-id* | The application Id |  | String
+| *camel.component.facebook.configuration.o-auth-app-secret* | The application Secret |  | String
+| *camel.component.facebook.configuration.o-auth-authorization-u-r-l* | OAuth authorization URL | https://www.facebook.com/dialog/oauth | String
+| *camel.component.facebook.configuration.o-auth-permissions* | Default OAuth permissions. Comma separated permission names. See \https://developers.facebook.com/docs/reference/login/#permissions for the detail |  | String
+| *camel.component.facebook.configuration.pretty-debug-enabled* | Prettify JSON debug output if set to true | false | Boolean
+| *camel.component.facebook.configuration.rest-base-u-r-l* | API base URL | https://graph.facebook.com/ | String
+| *camel.component.facebook.configuration.use-s-s-l* | Use SSL | true | Boolean
+| *camel.component.facebook.configuration.video-base-u-r-l* | Video API base URL | https://graph-video.facebook.com/ | String
+| *camel.component.facebook.enabled* | Whether to enable auto configuration of the facebook component. This is enabled by default. |  | Boolean
+| *camel.component.facebook.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+|===
+
diff --git a/components-starter/camel-fastjson-starter/src/main/docs/fastjson-starter.adoc b/components-starter/camel-fastjson-starter/src/main/docs/fastjson-starter.adoc
new file mode 100644
index 0000000..eed50fb
--- /dev/null
+++ b/components-starter/camel-fastjson-starter/src/main/docs/fastjson-starter.adoc
@@ -0,0 +1,44 @@
+== fastjson - Spring Boot Auto-Configuration
+
+When using fastjson with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-fastjson-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.json-fastjson.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.json-fastjson.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.json-fastjson.auto-discover-object-mapper* | If set to true then Jackson will lookup for an objectMapper into the registry | false | Boolean
+| *camel.dataformat.json-fastjson.collection-type-name* | Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default. |  | String
+| *camel.dataformat.json-fastjson.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.json-fastjson.disable-features* | Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.json-fastjson.enable-features* | Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.json-fastjson.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.json-fastjson.enabled* | Whether to enable auto configuration of the json-fastjson data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.json-fastjson.include* | If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL |  | String
+| *camel.dataformat.json-fastjson.json-view* | When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations |  | Class
+| *camel.dataformat.json-fastjson.module-class-names* | To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma. |  | String
+| *camel.dataformat.json-fastjson.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma. |  | String
+| *camel.dataformat.json-fastjson.object-mapper* | Lookup and use the existing ObjectMapper with the given id when using Jackson. |  | String
+| *camel.dataformat.json-fastjson.permissions* | Adds permissions that controls which Java packages and classes XStream is allowed to use during unmarshal from xml/json to Java beans. A permission must be configured either here or globally using a JVM system property. The permission can be specified in a syntax where a plus sign is allow, and minus sign is deny. Wildcards is supported by using . as prefix. For example to allow com.foo and all subpackages then specfy com.foo.. Multiple pe [...]
+| *camel.dataformat.json-fastjson.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.json-fastjson.timezone* | If set then Jackson will use the Timezone when marshalling/unmarshalling. This option will have no effect on the others Json DataFormat, like gson, fastjson and xstream. |  | String
+| *camel.dataformat.json-fastjson.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.json-fastjson.use-default-object-mapper* | Whether to lookup and use default Jackson ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.json-fastjson.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+
diff --git a/components-starter/camel-fhir-starter/src/main/docs/fhir-starter.adoc b/components-starter/camel-fhir-starter/src/main/docs/fhir-starter.adoc
new file mode 100644
index 0000000..af4253e
--- /dev/null
+++ b/components-starter/camel-fhir-starter/src/main/docs/fhir-starter.adoc
@@ -0,0 +1,81 @@
+== fhir - Spring Boot Auto-Configuration
+
+When using fhir with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-fhir-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 57 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.fhir.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.fhir.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.fhir.configuration.access-token* | OAuth access token |  | String
+| *camel.component.fhir.configuration.api-name* | What kind of operation to perform |  | FhirApiName
+| *camel.component.fhir.configuration.client* | To use the custom client |  | IGenericClient
+| *camel.component.fhir.configuration.client-factory* | To use the custom client factory |  | IRestfulClientFactory
+| *camel.component.fhir.configuration.compress* | Compresses outgoing (POST/PUT) contents to the GZIP format | false | Boolean
+| *camel.component.fhir.configuration.connection-timeout* | How long to try and establish the initial TCP connection (in ms) | 10000 | Integer
+| *camel.component.fhir.configuration.defer-model-scanning* | When this option is set, model classes will not be scanned for children until the child list for the given type is actually accessed. | false | Boolean
+| *camel.component.fhir.configuration.encoding* | Encoding to use for all request |  | String
+| *camel.component.fhir.configuration.fhir-context* | FhirContext is an expensive object to create. To avoid creating multiple instances, it can be set directly. |  | FhirContext
+| *camel.component.fhir.configuration.fhir-version* | The FHIR Version to use | R4 | String
+| *camel.component.fhir.configuration.force-conformance-check* | Force conformance check | false | Boolean
+| *camel.component.fhir.configuration.log* | Will log every requests and responses | false | Boolean
+| *camel.component.fhir.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.fhir.configuration.password* | Username to use for basic authentication |  | String
+| *camel.component.fhir.configuration.pretty-print* | Pretty print all request | false | Boolean
+| *camel.component.fhir.configuration.proxy-host* | The proxy host |  | String
+| *camel.component.fhir.configuration.proxy-password* | The proxy password |  | String
+| *camel.component.fhir.configuration.proxy-port* | The proxy port |  | Integer
+| *camel.component.fhir.configuration.proxy-user* | The proxy username |  | String
+| *camel.component.fhir.configuration.server-url* | The FHIR server base URL |  | String
+| *camel.component.fhir.configuration.session-cookie* | HTTP session cookie to add to every request |  | String
+| *camel.component.fhir.configuration.socket-timeout* | How long to block for individual read/write operations (in ms) | 10000 | Integer
+| *camel.component.fhir.configuration.summary* | Request that the server modify the response using the <code>_summary</code> param |  | String
+| *camel.component.fhir.configuration.username* | Username to use for basic authentication |  | String
+| *camel.component.fhir.configuration.validation-mode* | When should Camel validate the FHIR Server's conformance statement | ONCE | String
+| *camel.component.fhir.enabled* | Whether to enable auto configuration of the fhir component. This is enabled by default. |  | Boolean
+| *camel.component.fhir.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.dataformat.fhirjson.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.fhirjson.dont-encode-elements* | If provided, specifies the elements which should NOT be encoded. Valid values for this field would include: Patient - Don't encode patient and all its children Patient.name - Don't encode the patient's name Patient.name.family - Don't encode the patient's family name .text - Don't encode the text element on any resource (only the very first position may contain a wildcard) DSTU2 note: Note that values including meta, such as Patient.me [...]
+| *camel.dataformat.fhirjson.dont-strip-versions-from-references-at-paths* | If supplied value(s), any resource references at the specified paths will have their resource versions encoded instead of being automatically stripped during the encoding process. This setting has no effect on the parsing process. This method provides a finer-grained level of control than setStripVersionsFromReferences(Boolean) and any paths specified by this method will be encoded even if setStripVersionsFromRe [...]
+| *camel.dataformat.fhirjson.enabled* | Whether to enable auto configuration of the fhirJson data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.fhirjson.encode-elements* | If provided, specifies the elements which should be encoded, to the exclusion of all others. Valid values for this field would include: Patient - Encode patient and all its children Patient.name - Encode only the patient's name Patient.name.family - Encode only the patient's family name .text - Encode the text element on any resource (only the very first position may contain a wildcard) .(mandatory) - This is a special case which causes any [...]
+| *camel.dataformat.fhirjson.encode-elements-applies-to-child-resources-only* | If set to true (default is false), the values supplied to setEncodeElements(Set) will not be applied to the root resource (typically a Bundle), but will be applied to any sub-resources contained within it (i.e. search result resources in that bundle) | false | Boolean
+| *camel.dataformat.fhirjson.fhir-version* | The version of FHIR to use. Possible values are: DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 | DSTU3 | String
+| *camel.dataformat.fhirjson.omit-resource-id* | If set to true (default is false) the ID of any resources being encoded will not be included in the output. Note that this does not apply to contained resources, only to root resources. In other words, if this is set to true, contained resources will still have local IDs but the outer/containing ID will not have an ID. | false | Boolean
+| *camel.dataformat.fhirjson.override-resource-id-with-bundle-entry-full-url* | If set to true (which is the default), the Bundle.entry.fullUrl will override the Bundle.entry.resource's resource id if the fullUrl is defined. This behavior happens when parsing the source data into a Bundle object. Set this to false if this is not the desired behavior (e.g. the client code wishes to perform additional validation checks between the fullUrl and the resource id). | false | Boolean
+| *camel.dataformat.fhirjson.pretty-print* | Sets the pretty print flag, meaning that the parser will encode resources with human-readable spacing and newlines between elements instead of condensing output as much as possible. | false | Boolean
+| *camel.dataformat.fhirjson.server-base-url* | Sets the server's base URL used by this parser. If a value is set, resource references will be turned into relative references if they are provided as absolute URLs but have a base matching the given base. |  | String
+| *camel.dataformat.fhirjson.strip-versions-from-references* | If set to true (which is the default), resource references containing a version will have the version removed when the resource is encoded. This is generally good behaviour because in most situations, references from one resource to another should be to the resource by ID, not by ID and version. In some cases though, it may be desirable to preserve the version in resource links. In that case, this value should be set to false [...]
+| *camel.dataformat.fhirjson.summary-mode* | If set to true (default is false) only elements marked by the FHIR specification as being summary elements will be included. | false | Boolean
+| *camel.dataformat.fhirjson.suppress-narratives* | If set to true (default is false), narratives will not be included in the encoded values. | false | Boolean
+| *camel.dataformat.fhirxml.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.fhirxml.dont-encode-elements* | If provided, specifies the elements which should NOT be encoded. Valid values for this field would include: Patient - Don't encode patient and all its children Patient.name - Don't encode the patient's name Patient.name.family - Don't encode the patient's family name .text - Don't encode the text element on any resource (only the very first position may contain a wildcard) DSTU2 note: Note that values including meta, such as Patient.met [...]
+| *camel.dataformat.fhirxml.dont-strip-versions-from-references-at-paths* | If supplied value(s), any resource references at the specified paths will have their resource versions encoded instead of being automatically stripped during the encoding process. This setting has no effect on the parsing process. This method provides a finer-grained level of control than setStripVersionsFromReferences(Boolean) and any paths specified by this method will be encoded even if setStripVersionsFromRef [...]
+| *camel.dataformat.fhirxml.enabled* | Whether to enable auto configuration of the fhirXml data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.fhirxml.encode-elements* | If provided, specifies the elements which should be encoded, to the exclusion of all others. Valid values for this field would include: Patient - Encode patient and all its children Patient.name - Encode only the patient's name Patient.name.family - Encode only the patient's family name .text - Encode the text element on any resource (only the very first position may contain a wildcard) .(mandatory) - This is a special case which causes any  [...]
+| *camel.dataformat.fhirxml.encode-elements-applies-to-child-resources-only* | If set to true (default is false), the values supplied to setEncodeElements(Set) will not be applied to the root resource (typically a Bundle), but will be applied to any sub-resources contained within it (i.e. search result resources in that bundle) | false | Boolean
+| *camel.dataformat.fhirxml.fhir-version* | The version of FHIR to use. Possible values are: DSTU2,DSTU2_HL7ORG,DSTU2_1,DSTU3,R4 | DSTU3 | String
+| *camel.dataformat.fhirxml.omit-resource-id* | If set to true (default is false) the ID of any resources being encoded will not be included in the output. Note that this does not apply to contained resources, only to root resources. In other words, if this is set to true, contained resources will still have local IDs but the outer/containing ID will not have an ID. | false | Boolean
+| *camel.dataformat.fhirxml.override-resource-id-with-bundle-entry-full-url* | If set to true (which is the default), the Bundle.entry.fullUrl will override the Bundle.entry.resource's resource id if the fullUrl is defined. This behavior happens when parsing the source data into a Bundle object. Set this to false if this is not the desired behavior (e.g. the client code wishes to perform additional validation checks between the fullUrl and the resource id). | false | Boolean
+| *camel.dataformat.fhirxml.pretty-print* | Sets the pretty print flag, meaning that the parser will encode resources with human-readable spacing and newlines between elements instead of condensing output as much as possible. | false | Boolean
+| *camel.dataformat.fhirxml.server-base-url* | Sets the server's base URL used by this parser. If a value is set, resource references will be turned into relative references if they are provided as absolute URLs but have a base matching the given base. |  | String
+| *camel.dataformat.fhirxml.strip-versions-from-references* | If set to true (which is the default), resource references containing a version will have the version removed when the resource is encoded. This is generally good behaviour because in most situations, references from one resource to another should be to the resource by ID, not by ID and version. In some cases though, it may be desirable to preserve the version in resource links. In that case, this value should be set to false. [...]
+| *camel.dataformat.fhirxml.summary-mode* | If set to true (default is false) only elements marked by the FHIR specification as being summary elements will be included. | false | Boolean
+| *camel.dataformat.fhirxml.suppress-narratives* | If set to true (default is false), narratives will not be included in the encoded values. | false | Boolean
+|===
+
diff --git a/components-starter/camel-file-starter/src/main/docs/file-starter.adoc b/components-starter/camel-file-starter/src/main/docs/file-starter.adoc
new file mode 100644
index 0000000..60cb538
--- /dev/null
+++ b/components-starter/camel-file-starter/src/main/docs/file-starter.adoc
@@ -0,0 +1,28 @@
+== file - Spring Boot Auto-Configuration
+
+When using file with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-file-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.file.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.file.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.file.enabled* | Whether to enable auto configuration of the file component. This is enabled by default. |  | Boolean
+| *camel.component.file.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-file-watch-starter/src/main/docs/file-watch-starter.adoc b/components-starter/camel-file-watch-starter/src/main/docs/file-watch-starter.adoc
new file mode 100644
index 0000000..41ccbde
--- /dev/null
+++ b/components-starter/camel-file-watch-starter/src/main/docs/file-watch-starter.adoc
@@ -0,0 +1,32 @@
+== file-watch - Spring Boot Auto-Configuration
+
+When using file-watch with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-file-watch-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 8 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.file-watch.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.file-watch.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.file-watch.concurrent-consumers* | The number of concurrent consumers. Increase this value, if your route is slow to prevent buffering in queue. | 1 | Integer
+| *camel.component.file-watch.enabled* | Whether to enable auto configuration of the file-watch component. This is enabled by default. |  | Boolean
+| *camel.component.file-watch.file-hasher* | Reference to io.methvin.watcher.hashing.FileHasher. This prevents emitting duplicate events on some platforms. For working with large files and if you dont need detect multiple modifications per second per file, use #lastModifiedTimeFileHasher. You can also provide custom implementation in registry. The option is a io.methvin.watcher.hashing.FileHasher type. |  | String
+| *camel.component.file-watch.poll-threads* | The number of threads polling WatchService. Increase this value, if you see OVERFLOW messages in log. | 1 | Integer
+| *camel.component.file-watch.queue-size* | Maximum size of queue between WatchService and consumer. Unbounded by default. | 2147483647 | Integer
+| *camel.component.file-watch.use-file-hashing* | Enables or disables file hashing to detect duplicate events. If you disable this, you can get some events multiple times on some platforms and JDKs. Check java.nio.file.WatchService limitations for your target platform. | true | Boolean
+|===
+
diff --git a/components-starter/camel-flatpack-starter/src/main/docs/flatpack-starter.adoc b/components-starter/camel-flatpack-starter/src/main/docs/flatpack-starter.adoc
new file mode 100644
index 0000000..1099258
--- /dev/null
+++ b/components-starter/camel-flatpack-starter/src/main/docs/flatpack-starter.adoc
@@ -0,0 +1,38 @@
+== flatpack - Spring Boot Auto-Configuration
+
+When using flatpack with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-flatpack-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 14 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.flatpack.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.flatpack.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.flatpack.enabled* | Whether to enable auto configuration of the flatpack component. This is enabled by default. |  | Boolean
+| *camel.component.flatpack.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.dataformat.flatpack.allow-short-lines* | Allows for lines to be shorter than expected and ignores the extra characters | false | Boolean
+| *camel.dataformat.flatpack.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.flatpack.definition* | The flatpack pzmap configuration file. Can be omitted in simpler situations, but its preferred to use the pzmap. |  | String
+| *camel.dataformat.flatpack.delimiter* | The delimiter char (could be ; , or similar) | , | String
+| *camel.dataformat.flatpack.enabled* | Whether to enable auto configuration of the flatpack data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.flatpack.fixed* | Delimited or fixed. Is by default false = delimited | false | Boolean
+| *camel.dataformat.flatpack.ignore-extra-columns* | Allows for lines to be longer than expected and ignores the extra characters. | false | Boolean
+| *camel.dataformat.flatpack.ignore-first-record* | Whether the first line is ignored for delimited files (for the column headers). Is by default true. | true | Boolean
+| *camel.dataformat.flatpack.parser-factory-ref* | References to a custom parser factory to lookup in the registry |  | String
+| *camel.dataformat.flatpack.text-qualifier* | If the text is qualified with a character. Uses quote character by default. |  | String
+|===
+
diff --git a/components-starter/camel-flink-starter/src/main/docs/flink-starter.adoc b/components-starter/camel-flink-starter/src/main/docs/flink-starter.adoc
new file mode 100644
index 0000000..bac5a13
--- /dev/null
+++ b/components-starter/camel-flink-starter/src/main/docs/flink-starter.adoc
@@ -0,0 +1,31 @@
+== flink - Spring Boot Auto-Configuration
+
+When using flink with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-flink-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 7 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.flink.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.flink.data-set* | DataSet to compute against. The option is a org.apache.flink.api.java.DataSet type. |  | String
+| *camel.component.flink.data-set-callback* | Function performing action against a DataSet. The option is a org.apache.camel.component.flink.DataSetCallback type. |  | String
+| *camel.component.flink.data-stream* | DataStream to compute against. The option is a org.apache.flink.streaming.api.datastream.DataStream type. |  | String
+| *camel.component.flink.data-stream-callback* | Function performing action against a DataStream. The option is a org.apache.camel.component.flink.DataStreamCallback type. |  | String
+| *camel.component.flink.enabled* | Whether to enable auto configuration of the flink component. This is enabled by default. |  | Boolean
+| *camel.component.flink.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+|===
+
diff --git a/components-starter/camel-fop-starter/src/main/docs/fop-starter.adoc b/components-starter/camel-fop-starter/src/main/docs/fop-starter.adoc
new file mode 100644
index 0000000..06ab10f
--- /dev/null
+++ b/components-starter/camel-fop-starter/src/main/docs/fop-starter.adoc
@@ -0,0 +1,27 @@
+== fop - Spring Boot Auto-Configuration
+
+When using fop with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-fop-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.fop.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.fop.enabled* | Whether to enable auto configuration of the fop component. This is enabled by default. |  | Boolean
+| *camel.component.fop.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-freemarker-starter/src/main/docs/freemarker-starter.adoc b/components-starter/camel-freemarker-starter/src/main/docs/freemarker-starter.adoc
new file mode 100644
index 0000000..b0337e2
--- /dev/null
+++ b/components-starter/camel-freemarker-starter/src/main/docs/freemarker-starter.adoc
@@ -0,0 +1,28 @@
+== freemarker - Spring Boot Auto-Configuration
+
+When using freemarker with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-freemarker-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.freemarker.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.freemarker.configuration* | To use an existing freemarker.template.Configuration instance as the configuration. The option is a freemarker.template.Configuration type. |  | String
+| *camel.component.freemarker.enabled* | Whether to enable auto configuration of the freemarker component. This is enabled by default. |  | Boolean
+| *camel.component.freemarker.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+|===
+
diff --git a/components-starter/camel-ftp-starter/src/main/docs/ftp-starter.adoc b/components-starter/camel-ftp-starter/src/main/docs/ftp-starter.adoc
new file mode 100644
index 0000000..7eadb36
--- /dev/null
+++ b/components-starter/camel-ftp-starter/src/main/docs/ftp-starter.adoc
@@ -0,0 +1,37 @@
+== ftp - Spring Boot Auto-Configuration
+
+When using ftp with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ftp-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 13 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ftp.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ftp.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.ftp.enabled* | Whether to enable auto configuration of the \ftp component. This is enabled by default. |  | Boolean
+| *camel.component.ftp.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.ftps.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ftps.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.ftps.enabled* | Whether to enable auto configuration of the \ftps component. This is enabled by default. |  | Boolean
+| *camel.component.ftps.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.ftps.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+| *camel.component.sftp.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.sftp.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.sftp.enabled* | Whether to enable auto configuration of the \sftp component. This is enabled by default. |  | Boolean
+| *camel.component.sftp.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-ganglia-starter/src/main/docs/ganglia-starter.adoc b/components-starter/camel-ganglia-starter/src/main/docs/ganglia-starter.adoc
new file mode 100644
index 0000000..5efb6d5
--- /dev/null
+++ b/components-starter/camel-ganglia-starter/src/main/docs/ganglia-starter.adoc
@@ -0,0 +1,41 @@
+== ganglia - Spring Boot Auto-Configuration
+
+When using ganglia with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ganglia-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 17 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ganglia.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ganglia.configuration.dmax* | Minumum time in seconds before Ganglia will purge the metric value if it expires. Set to 0 and the value will remain in Ganglia indefinitely until a gmond agent restart. | 0 | Integer
+| *camel.component.ganglia.configuration.group-name* | The group that the metric belongs to. | java | String
+| *camel.component.ganglia.configuration.host* | Host name for Ganglia server | 239.2.11.71 | String
+| *camel.component.ganglia.configuration.metric-name* | The name to use for the metric. | metric | String
+| *camel.component.ganglia.configuration.mode* | Send the UDP metric packets using MULTICAST or UNICAST |  | GMetric$UDPAddressingMode
+| *camel.component.ganglia.configuration.port* | Port for Ganglia server | 8649 | Integer
+| *camel.component.ganglia.configuration.prefix* | Prefix the metric name with this string and an underscore. |  | String
+| *camel.component.ganglia.configuration.slope* | The slope |  | GMetricSlope
+| *camel.component.ganglia.configuration.spoof-hostname* | Spoofing information IP:hostname |  | String
+| *camel.component.ganglia.configuration.tmax* | Maximum time in seconds that the value can be considered current. After this, Ganglia considers the value to have expired. | 60 | Integer
+| *camel.component.ganglia.configuration.ttl* | If using multicast, set the TTL of the packets | 5 | Integer
+| *camel.component.ganglia.configuration.type* | The type of value |  | GMetricType
+| *camel.component.ganglia.configuration.units* | Any unit of measurement that qualifies the metric, e.g. widgets, litres, bytes. Do not include a prefix such as k (kilo) or m (milli), other tools may scale the units later. The value should be unscaled. |  | String
+| *camel.component.ganglia.configuration.wire-format31x* | Use the wire format of Ganglia 3.1.0 and later versions. Set this to false to use Ganglia 3.0.x or earlier. | true | Boolean
+| *camel.component.ganglia.enabled* | Whether to enable auto configuration of the ganglia component. This is enabled by default. |  | Boolean
+| *camel.component.ganglia.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-geocoder-starter/src/main/docs/geocoder-starter.adoc b/components-starter/camel-geocoder-starter/src/main/docs/geocoder-starter.adoc
new file mode 100644
index 0000000..9a1112e
--- /dev/null
+++ b/components-starter/camel-geocoder-starter/src/main/docs/geocoder-starter.adoc
@@ -0,0 +1,27 @@
+== geocoder - Spring Boot Auto-Configuration
+
+When using geocoder with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-geocoder-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.geocoder.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.geocoder.enabled* | Whether to enable auto configuration of the geocoder component. This is enabled by default. |  | Boolean
+| *camel.component.geocoder.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+|===
+
diff --git a/components-starter/camel-git-starter/src/main/docs/git-starter.adoc b/components-starter/camel-git-starter/src/main/docs/git-starter.adoc
new file mode 100644
index 0000000..5270099
--- /dev/null
+++ b/components-starter/camel-git-starter/src/main/docs/git-starter.adoc
@@ -0,0 +1,28 @@
+== git - Spring Boot Auto-Configuration
+
+When using git with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-git-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.git.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.git.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.git.enabled* | Whether to enable auto configuration of the git component. This is enabled by default. |  | Boolean
+| *camel.component.git.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-github-starter/src/main/docs/github-starter.adoc b/components-starter/camel-github-starter/src/main/docs/github-starter.adoc
new file mode 100644
index 0000000..ff23e2e
--- /dev/null
+++ b/components-starter/camel-github-starter/src/main/docs/github-starter.adoc
@@ -0,0 +1,28 @@
+== github - Spring Boot Auto-Configuration
+
+When using github with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-github-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.github.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.github.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.github.enabled* | Whether to enable auto configuration of the github component. This is enabled by default. |  | Boolean
+| *camel.component.github.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-google-bigquery-starter/src/main/docs/google-bigquery-starter.adoc b/components-starter/camel-google-bigquery-starter/src/main/docs/google-bigquery-starter.adoc
new file mode 100644
index 0000000..bbd0adc
--- /dev/null
+++ b/components-starter/camel-google-bigquery-starter/src/main/docs/google-bigquery-starter.adoc
@@ -0,0 +1,41 @@
+== google-bigquery - Spring Boot Auto-Configuration
+
+When using google-bigquery with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-google-bigquery-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 17 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.google-bigquery-sql.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-bigquery-sql.connection-factory.credentials-file-location* |  |  | String
+| *camel.component.google-bigquery-sql.connection-factory.service-account* |  |  | String
+| *camel.component.google-bigquery-sql.connection-factory.service-account-key* |  |  | String
+| *camel.component.google-bigquery-sql.connection-factory.service-u-r-l* |  |  | String
+| *camel.component.google-bigquery-sql.enabled* | Whether to enable auto configuration of the google-bigquery-sql component. This is enabled by default. |  | Boolean
+| *camel.component.google-bigquery-sql.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is  [...]
+| *camel.component.google-bigquery-sql.project-id* | Google Cloud Project Id |  | String
+| *camel.component.google-bigquery.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-bigquery.connection-factory.credentials-file-location* |  |  | String
+| *camel.component.google-bigquery.connection-factory.service-account* |  |  | String
+| *camel.component.google-bigquery.connection-factory.service-account-key* |  |  | String
+| *camel.component.google-bigquery.connection-factory.service-u-r-l* |  |  | String
+| *camel.component.google-bigquery.dataset-id* | BigQuery Dataset Id |  | String
+| *camel.component.google-bigquery.enabled* | Whether to enable auto configuration of the google-bigquery component. This is enabled by default. |  | Boolean
+| *camel.component.google-bigquery.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+| *camel.component.google-bigquery.project-id* | Google Cloud Project Id |  | String
+|===
+
diff --git a/components-starter/camel-google-calendar-starter/src/main/docs/google-calendar-starter.adoc b/components-starter/camel-google-calendar-starter/src/main/docs/google-calendar-starter.adoc
new file mode 100644
index 0000000..cde061f
--- /dev/null
+++ b/components-starter/camel-google-calendar-starter/src/main/docs/google-calendar-starter.adoc
@@ -0,0 +1,56 @@
+== google-calendar - Spring Boot Auto-Configuration
+
+When using google-calendar with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-google-calendar-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 32 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.google-calendar-stream.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-calendar-stream.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.google-calendar-stream.client-factory* | The client Factory. The option is a org.apache.camel.component.google.calendar.GoogleCalendarClientFactory type. |  | String
+| *camel.component.google-calendar-stream.configuration.access-token* | OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage. |  | String
+| *camel.component.google-calendar-stream.configuration.application-name* | Google Calendar application name. Example would be camel-google-calendar/1.0 |  | String
+| *camel.component.google-calendar-stream.configuration.calendar-id* | The calendarId to be used | primary | String
+| *camel.component.google-calendar-stream.configuration.client-id* | Client ID of the calendar application |  | String
+| *camel.component.google-calendar-stream.configuration.client-secret* | Client secret of the calendar application |  | String
+| *camel.component.google-calendar-stream.configuration.consider-last-update* | Take into account the lastUpdate of the last event polled as start date for the next poll | false | Boolean
+| *camel.component.google-calendar-stream.configuration.consume-from-now* | Consume events in the selected calendar from now on | true | Boolean
+| *camel.component.google-calendar-stream.configuration.index* | Specifies an index for the endpoint |  | String
+| *camel.component.google-calendar-stream.configuration.max-results* | Max results to be returned | 10 | Integer
+| *camel.component.google-calendar-stream.configuration.query* | The query to execute on calendar |  | String
+| *camel.component.google-calendar-stream.configuration.refresh-token* | OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived. |  | String
+| *camel.component.google-calendar-stream.configuration.scopes* | Specifies the level of permissions you want a calendar application to have to a user account. See \https://developers.google.com/calendar/auth for more info. |  | List
+| *camel.component.google-calendar-stream.enabled* | Whether to enable auto configuration of the google-calendar-stream component. This is enabled by default. |  | Boolean
+| *camel.component.google-calendar.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-calendar.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.google-calendar.client-factory* | To use the GoogleCalendarClientFactory as factory for creating the client. Will by default use BatchGoogleCalendarClientFactory. The option is a org.apache.camel.component.google.calendar.GoogleCalendarClientFactory type. |  | String
+| *camel.component.google-calendar.configuration.access-token* | OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage. |  | String
+| *camel.component.google-calendar.configuration.api-name* | What kind of operation to perform |  | GoogleCalendarApiName
+| *camel.component.google-calendar.configuration.application-name* | Google calendar application name. Example would be camel-google-calendar/1.0 |  | String
+| *camel.component.google-calendar.configuration.client-id* | Client ID of the calendar application |  | String
+| *camel.component.google-calendar.configuration.client-secret* | Client secret of the calendar application |  | String
+| *camel.component.google-calendar.configuration.email-address* | The emailAddress of the Google Service Account. |  | String
+| *camel.component.google-calendar.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.google-calendar.configuration.p12-file-name* | The name of the p12 file which has the private key to use with the Google Service Account. |  | String
+| *camel.component.google-calendar.configuration.refresh-token* | OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived. |  | String
+| *camel.component.google-calendar.configuration.scopes* | Specifies the level of permissions you want a calendar application to have to a user account. You can separate multiple scopes by comma. See \https://developers.google.com/google-apps/calendar/auth for more info. | https://www.googleapis.com/auth/calendar | String
+| *camel.component.google-calendar.configuration.user* | The email address of the user the application is trying to impersonate in the service account flow |  | String
+| *camel.component.google-calendar.enabled* | Whether to enable auto configuration of the google-calendar component. This is enabled by default. |  | Boolean
+| *camel.component.google-calendar.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+|===
+
diff --git a/components-starter/camel-google-drive-starter/src/main/docs/google-drive-starter.adoc b/components-starter/camel-google-drive-starter/src/main/docs/google-drive-starter.adoc
new file mode 100644
index 0000000..69f8c83
--- /dev/null
+++ b/components-starter/camel-google-drive-starter/src/main/docs/google-drive-starter.adoc
@@ -0,0 +1,37 @@
+== google-drive - Spring Boot Auto-Configuration
+
+When using google-drive with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-google-drive-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 13 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.google-drive.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-drive.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.google-drive.client-factory* | To use the GoogleCalendarClientFactory as factory for creating the client. Will by default use BatchGoogleDriveClientFactory. The option is a org.apache.camel.component.google.drive.GoogleDriveClientFactory type. |  | String
+| *camel.component.google-drive.configuration.access-token* | OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage. |  | String
+| *camel.component.google-drive.configuration.api-name* | What kind of operation to perform |  | GoogleDriveApiName
+| *camel.component.google-drive.configuration.application-name* | Google drive application name. Example would be camel-google-drive/1.0 |  | String
+| *camel.component.google-drive.configuration.client-id* | Client ID of the drive application |  | String
+| *camel.component.google-drive.configuration.client-secret* | Client secret of the drive application |  | String
+| *camel.component.google-drive.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.google-drive.configuration.refresh-token* | OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived. |  | String
+| *camel.component.google-drive.configuration.scopes* | Specifies the level of permissions you want a drive application to have to a user account. See \https://developers.google.com/drive/web/scopes for more info. |  | List
+| *camel.component.google-drive.enabled* | Whether to enable auto configuration of the google-drive component. This is enabled by default. |  | Boolean
+| *camel.component.google-drive.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+|===
+
diff --git a/components-starter/camel-google-mail-starter/src/main/docs/google-mail-starter.adoc b/components-starter/camel-google-mail-starter/src/main/docs/google-mail-starter.adoc
new file mode 100644
index 0000000..cb22994
--- /dev/null
+++ b/components-starter/camel-google-mail-starter/src/main/docs/google-mail-starter.adoc
@@ -0,0 +1,50 @@
+== google-mail - Spring Boot Auto-Configuration
+
+When using google-mail with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-google-mail-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 26 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.google-mail-stream.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-mail-stream.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.google-mail-stream.client-factory* | The client Factory. The option is a org.apache.camel.component.google.mail.GoogleMailClientFactory type. |  | String
+| *camel.component.google-mail-stream.configuration.access-token* | OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage. |  | String
+| *camel.component.google-mail-stream.configuration.application-name* | Google mail application name. Example would be camel-google-mail/1.0 |  | String
+| *camel.component.google-mail-stream.configuration.client-id* | Client ID of the mail application |  | String
+| *camel.component.google-mail-stream.configuration.client-secret* | Client secret of the mail application |  | String
+| *camel.component.google-mail-stream.configuration.index* | Specifies an index for the endpoint |  | String
+| *camel.component.google-mail-stream.configuration.labels* | Comma separated list of labels to take into account |  | String
+| *camel.component.google-mail-stream.configuration.mark-as-read* | Mark the message as read once it has been consumed | false | Boolean
+| *camel.component.google-mail-stream.configuration.max-results* | Max results to be returned | 10 | Long
+| *camel.component.google-mail-stream.configuration.query* | The query to execute on gmail box | is:unread | String
+| *camel.component.google-mail-stream.configuration.refresh-token* | OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived. |  | String
+| *camel.component.google-mail-stream.enabled* | Whether to enable auto configuration of the google-mail-stream component. This is enabled by default. |  | Boolean
+| *camel.component.google-mail.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-mail.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.google-mail.client-factory* | To use the GoogleCalendarClientFactory as factory for creating the client. Will by default use BatchGoogleMailClientFactory. The option is a org.apache.camel.component.google.mail.GoogleMailClientFactory type. |  | String
+| *camel.component.google-mail.configuration.access-token* | OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage. |  | String
+| *camel.component.google-mail.configuration.api-name* | What kind of operation to perform |  | GoogleMailApiName
+| *camel.component.google-mail.configuration.application-name* | Google mail application name. Example would be camel-google-mail/1.0 |  | String
+| *camel.component.google-mail.configuration.client-id* | Client ID of the mail application |  | String
+| *camel.component.google-mail.configuration.client-secret* | Client secret of the mail application |  | String
+| *camel.component.google-mail.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.google-mail.configuration.refresh-token* | OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived. |  | String
+| *camel.component.google-mail.enabled* | Whether to enable auto configuration of the google-mail component. This is enabled by default. |  | Boolean
+| *camel.component.google-mail.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processe [...]
+|===
+
diff --git a/components-starter/camel-google-pubsub-starter/src/main/docs/google-pubsub-starter.adoc b/components-starter/camel-google-pubsub-starter/src/main/docs/google-pubsub-starter.adoc
new file mode 100644
index 0000000..fe5d1fb
--- /dev/null
+++ b/components-starter/camel-google-pubsub-starter/src/main/docs/google-pubsub-starter.adoc
@@ -0,0 +1,32 @@
+== google-pubsub - Spring Boot Auto-Configuration
+
+When using google-pubsub with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-google-pubsub-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 8 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.google-pubsub.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-pubsub.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.google-pubsub.connection-factory.credentials-file-location* |  |  | String
+| *camel.component.google-pubsub.connection-factory.service-account* |  |  | String
+| *camel.component.google-pubsub.connection-factory.service-account-key* |  |  | String
+| *camel.component.google-pubsub.connection-factory.service-u-r-l* |  |  | String
+| *camel.component.google-pubsub.enabled* | Whether to enable auto configuration of the google-pubsub component. This is enabled by default. |  | Boolean
+| *camel.component.google-pubsub.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proces [...]
+|===
+
diff --git a/components-starter/camel-google-sheets-starter/src/main/docs/google-sheets-starter.adoc b/components-starter/camel-google-sheets-starter/src/main/docs/google-sheets-starter.adoc
new file mode 100644
index 0000000..a8000e9
--- /dev/null
+++ b/components-starter/camel-google-sheets-starter/src/main/docs/google-sheets-starter.adoc
@@ -0,0 +1,54 @@
+== google-sheets - Spring Boot Auto-Configuration
+
+When using google-sheets with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-google-sheets-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 30 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.google-sheets-stream.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-sheets-stream.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.google-sheets-stream.client-factory* | To use the GoogleSheetsClientFactory as factory for creating the client. Will by default use BatchGoogleSheetsClientFactory. The option is a org.apache.camel.component.google.sheets.GoogleSheetsClientFactory type. |  | String
+| *camel.component.google-sheets-stream.configuration.access-token* | OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage. |  | String
+| *camel.component.google-sheets-stream.configuration.api-name* | Sets the apiName. |  | String
+| *camel.component.google-sheets-stream.configuration.application-name* | Google sheets application name. Example would be camel-google-sheets/1.0 |  | String
+| *camel.component.google-sheets-stream.configuration.client-id* | Client ID of the sheets application |  | String
+| *camel.component.google-sheets-stream.configuration.client-secret* | Client secret of the sheets application |  | String
+| *camel.component.google-sheets-stream.configuration.include-grid-data* | True if grid data should be returned. | false | Boolean
+| *camel.component.google-sheets-stream.configuration.major-dimension* | Specifies the major dimension that results should use.. | ROWS | String
+| *camel.component.google-sheets-stream.configuration.max-results* | Specify the maximum number of returned results. This will limit the number of rows in a returned value range data set or the number of returned value ranges in a batch request. | 0 | Integer
+| *camel.component.google-sheets-stream.configuration.range* | Specifies the range of rows and columns in a sheet to get data from. |  | String
+| *camel.component.google-sheets-stream.configuration.refresh-token* | OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived. |  | String
+| *camel.component.google-sheets-stream.configuration.scopes* | Specifies the level of permissions you want a sheets application to have to a user account. See \https://developers.google.com/identity/protocols/googlescopes for more info. |  | List
+| *camel.component.google-sheets-stream.configuration.split-results* | True if value range result should be split into rows or columns to process each of them individually. When true each row or column is represented with a separate exchange in batch processing. Otherwise value range object is used as exchange junk size. | false | Boolean
+| *camel.component.google-sheets-stream.configuration.spreadsheet-id* | Specifies the spreadsheet identifier that is used to identify the target to obtain. |  | String
+| *camel.component.google-sheets-stream.configuration.value-render-option* | Determines how values should be rendered in the output. | FORMATTED_VALUE | String
+| *camel.component.google-sheets-stream.enabled* | Whether to enable auto configuration of the google-sheets-stream component. This is enabled by default. |  | Boolean
+| *camel.component.google-sheets.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.google-sheets.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.google-sheets.client-factory* | To use the GoogleSheetsClientFactory as factory for creating the client. Will by default use BatchGoogleSheetsClientFactory. The option is a org.apache.camel.component.google.sheets.GoogleSheetsClientFactory type. |  | String
+| *camel.component.google-sheets.configuration.access-token* | OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage. |  | String
+| *camel.component.google-sheets.configuration.api-name* | What kind of operation to perform |  | GoogleSheetsApiName
+| *camel.component.google-sheets.configuration.application-name* | Google Sheets application name. Example would be camel-google-sheets/1.0 |  | String
+| *camel.component.google-sheets.configuration.client-id* | Client ID of the sheets application |  | String
+| *camel.component.google-sheets.configuration.client-secret* | Client secret of the sheets application |  | String
+| *camel.component.google-sheets.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.google-sheets.configuration.refresh-token* | OAuth 2 refresh token. Using this, the Google Sheets component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived. |  | String
+| *camel.component.google-sheets.enabled* | Whether to enable auto configuration of the google-sheets component. This is enabled by default. |  | Boolean
+| *camel.component.google-sheets.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proces [...]
+|===
+
diff --git a/components-starter/camel-gora-starter/src/main/docs/gora-starter.adoc b/components-starter/camel-gora-starter/src/main/docs/gora-starter.adoc
new file mode 100644
index 0000000..a096176
--- /dev/null
+++ b/components-starter/camel-gora-starter/src/main/docs/gora-starter.adoc
@@ -0,0 +1,28 @@
+== gora - Spring Boot Auto-Configuration
+
+When using gora with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-gora-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.gora.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.gora.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.gora.enabled* | Whether to enable auto configuration of the gora component. This is enabled by default. |  | Boolean
+| *camel.component.gora.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-graphql-starter/src/main/docs/graphql-starter.adoc b/components-starter/camel-graphql-starter/src/main/docs/graphql-starter.adoc
new file mode 100644
index 0000000..4f7e11b
--- /dev/null
+++ b/components-starter/camel-graphql-starter/src/main/docs/graphql-starter.adoc
@@ -0,0 +1,27 @@
+== graphql - Spring Boot Auto-Configuration
+
+When using graphql with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-graphql-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.graphql.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.graphql.enabled* | Whether to enable auto configuration of the graphql component. This is enabled by default. |  | Boolean
+| *camel.component.graphql.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-grok-starter/src/main/docs/grok-starter.adoc b/components-starter/camel-grok-starter/src/main/docs/grok-starter.adoc
new file mode 100644
index 0000000..f995419
--- /dev/null
+++ b/components-starter/camel-grok-starter/src/main/docs/grok-starter.adoc
@@ -0,0 +1,30 @@
+== grok - Spring Boot Auto-Configuration
+
+When using grok with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-grok-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.grok.allow-multiple-matches-per-line* | If false, every line of input is matched for pattern only once. Otherwise the line can be scanned multiple times when non-terminal pattern is used. | true | Boolean
+| *camel.dataformat.grok.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.grok.enabled* | Whether to enable auto configuration of the grok data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.grok.flattened* | Turns on flattened mode. In flattened mode the exception is thrown when there are multiple pattern matches with same key. | false | Boolean
+| *camel.dataformat.grok.named-only* | Whether to capture named expressions only or not (i.e. %{IP:ip} but not \$\{IP\}) | false | Boolean
+| *camel.dataformat.grok.pattern* | The grok pattern to match lines of input |  | String
+|===
+
diff --git a/components-starter/camel-groovy-starter/src/main/docs/groovy-starter.adoc b/components-starter/camel-groovy-starter/src/main/docs/groovy-starter.adoc
new file mode 100644
index 0000000..e73b8ad
--- /dev/null
+++ b/components-starter/camel-groovy-starter/src/main/docs/groovy-starter.adoc
@@ -0,0 +1,26 @@
+== groovy - Spring Boot Auto-Configuration
+
+When using groovy with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-groovy-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 2 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.language.groovy.enabled* | Whether to enable auto configuration of the groovy language. This is enabled by default. |  | Boolean
+| *camel.language.groovy.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+|===
+
diff --git a/components-starter/camel-grpc-starter/src/main/docs/grpc-starter.adoc b/components-starter/camel-grpc-starter/src/main/docs/grpc-starter.adoc
new file mode 100644
index 0000000..1f41e6e
--- /dev/null
+++ b/components-starter/camel-grpc-starter/src/main/docs/grpc-starter.adoc
@@ -0,0 +1,28 @@
+== grpc - Spring Boot Auto-Configuration
+
+When using grpc with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-grpc-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.grpc.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.grpc.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.grpc.enabled* | Whether to enable auto configuration of the grpc component. This is enabled by default. |  | Boolean
+| *camel.component.grpc.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-gson-starter/src/main/docs/gson-starter.adoc b/components-starter/camel-gson-starter/src/main/docs/gson-starter.adoc
new file mode 100644
index 0000000..6eb2022
--- /dev/null
+++ b/components-starter/camel-gson-starter/src/main/docs/gson-starter.adoc
@@ -0,0 +1,44 @@
+== gson - Spring Boot Auto-Configuration
+
+When using gson with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-gson-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.json-gson.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.json-gson.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.json-gson.auto-discover-object-mapper* | If set to true then Jackson will lookup for an objectMapper into the registry | false | Boolean
+| *camel.dataformat.json-gson.collection-type-name* | Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default. |  | String
+| *camel.dataformat.json-gson.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.json-gson.disable-features* | Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.json-gson.enable-features* | Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.json-gson.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.json-gson.enabled* | Whether to enable auto configuration of the json-gson data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.json-gson.include* | If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL |  | String
+| *camel.dataformat.json-gson.json-view* | When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations |  | Class
+| *camel.dataformat.json-gson.module-class-names* | To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma. |  | String
+| *camel.dataformat.json-gson.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma. |  | String
+| *camel.dataformat.json-gson.object-mapper* | Lookup and use the existing ObjectMapper with the given id when using Jackson. |  | String
+| *camel.dataformat.json-gson.permissions* | Adds permissions that controls which Java packages and classes XStream is allowed to use during unmarshal from xml/json to Java beans. A permission must be configured either here or globally using a JVM system property. The permission can be specified in a syntax where a plus sign is allow, and minus sign is deny. Wildcards is supported by using . as prefix. For example to allow com.foo and all subpackages then specfy com.foo.. Multiple permis [...]
+| *camel.dataformat.json-gson.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.json-gson.timezone* | If set then Jackson will use the Timezone when marshalling/unmarshalling. This option will have no effect on the others Json DataFormat, like gson, fastjson and xstream. |  | String
+| *camel.dataformat.json-gson.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.json-gson.use-default-object-mapper* | Whether to lookup and use default Jackson ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.json-gson.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+
diff --git a/components-starter/camel-guava-eventbus-starter/src/main/docs/guava-eventbus-starter.adoc b/components-starter/camel-guava-eventbus-starter/src/main/docs/guava-eventbus-starter.adoc
new file mode 100644
index 0000000..b4a5ecf
--- /dev/null
+++ b/components-starter/camel-guava-eventbus-starter/src/main/docs/guava-eventbus-starter.adoc
@@ -0,0 +1,30 @@
+== guava-eventbus - Spring Boot Auto-Configuration
+
+When using guava-eventbus with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-guava-eventbus-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.guava-eventbus.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.guava-eventbus.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.guava-eventbus.enabled* | Whether to enable auto configuration of the guava-eventbus component. This is enabled by default. |  | Boolean
+| *camel.component.guava-eventbus.event-bus* | To use the given Guava EventBus instance. The option is a com.google.common.eventbus.EventBus type. |  | String
+| *camel.component.guava-eventbus.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.guava-eventbus.listener-interface* | The interface with method(s) marked with the Subscribe annotation. Dynamic proxy will be created over the interface so it could be registered as the EventBus listener. Particularly useful when creating multi-event listeners and for handling DeadEvent properly. This option cannot be used together with eventClass option. |  | Class
+|===
+
diff --git a/components-starter/camel-hazelcast-starter/src/main/docs/hazelcast-starter.adoc b/components-starter/camel-hazelcast-starter/src/main/docs/hazelcast-starter.adoc
new file mode 100644
index 0000000..e223b7f
--- /dev/null
+++ b/components-starter/camel-hazelcast-starter/src/main/docs/hazelcast-starter.adoc
@@ -0,0 +1,109 @@
+== hazelcast - Spring Boot Auto-Configuration
+
+When using hazelcast with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-hazelcast-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 85 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.hazelcast-atomicvalue.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-atomicvalue.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-atomicvalue.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-atomicvalue.enabled* | Whether to enable auto configuration of the hazelcast-atomicvalue component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-atomicvalue.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-atomicvalue.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-atomicvalue.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message i [...]
+| *camel.component.hazelcast-instance.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-instance.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-instance.enabled* | Whether to enable auto configuration of the hazelcast-instance component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-instance.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-instance.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-list.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-list.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-list.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-list.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-list.enabled* | Whether to enable auto configuration of the hazelcast-list component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-list.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-list.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-list.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.hazelcast-map.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-map.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-map.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-map.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-map.enabled* | Whether to enable auto configuration of the hazelcast-map component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-map.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-map.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-map.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proces [...]
+| *camel.component.hazelcast-multimap.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-multimap.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-multimap.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-multimap.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-multimap.enabled* | Whether to enable auto configuration of the hazelcast-multimap component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-multimap.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-multimap.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-multimap.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is p [...]
+| *camel.component.hazelcast-queue.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-queue.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-queue.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-queue.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-queue.enabled* | Whether to enable auto configuration of the hazelcast-queue component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-queue.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-queue.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-queue.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+| *camel.component.hazelcast-replicatedmap.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-replicatedmap.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-replicatedmap.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-replicatedmap.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-replicatedmap.enabled* | Whether to enable auto configuration of the hazelcast-replicatedmap component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-replicatedmap.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-replicatedmap.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-replicatedmap.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message [...]
+| *camel.component.hazelcast-ringbuffer.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-ringbuffer.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-ringbuffer.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-ringbuffer.enabled* | Whether to enable auto configuration of the hazelcast-ringbuffer component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-ringbuffer.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-ringbuffer.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-ringbuffer.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is [...]
+| *camel.component.hazelcast-seda.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-seda.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-seda.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-seda.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-seda.enabled* | Whether to enable auto configuration of the hazelcast-seda component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-seda.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-seda.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-seda.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.hazelcast-set.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-set.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-set.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-set.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-set.enabled* | Whether to enable auto configuration of the hazelcast-set component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-set.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-set.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-set.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proces [...]
+| *camel.component.hazelcast-topic.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hazelcast-topic.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hazelcast-topic.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-topic.customizer.hazelcast-instance.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.hazelcast-topic.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-topic.customizer.hazelcast-instance.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.hazelcast-topic.enabled* | Whether to enable auto configuration of the hazelcast-topic component. This is enabled by default. |  | Boolean
+| *camel.component.hazelcast-topic.hazelcast-instance* | The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance. The option is a com.hazelcast.core.HazelcastInstance type. |  | String
+| *camel.component.hazelcast-topic.hazelcast-mode* | The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default. | node | String
+| *camel.component.hazelcast-topic.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+|===
+
diff --git a/components-starter/camel-hbase-starter/src/main/docs/hbase-starter.adoc b/components-starter/camel-hbase-starter/src/main/docs/hbase-starter.adoc
new file mode 100644
index 0000000..3f4e23f
--- /dev/null
+++ b/components-starter/camel-hbase-starter/src/main/docs/hbase-starter.adoc
@@ -0,0 +1,30 @@
+== hbase - Spring Boot Auto-Configuration
+
+When using hbase with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-hbase-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.hbase.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hbase.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hbase.configuration* | To use the shared configuration. The option is a org.apache.hadoop.conf.Configuration type. |  | String
+| *camel.component.hbase.enabled* | Whether to enable auto configuration of the hbase component. This is enabled by default. |  | Boolean
+| *camel.component.hbase.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+| *camel.component.hbase.pool-max-size* | Maximum number of references to keep for each table in the HTable pool. The default value is 10. | 10 | Integer
+|===
+
diff --git a/components-starter/camel-hdfs-starter/src/main/docs/hdfs-starter.adoc b/components-starter/camel-hdfs-starter/src/main/docs/hdfs-starter.adoc
new file mode 100644
index 0000000..5837816
--- /dev/null
+++ b/components-starter/camel-hdfs-starter/src/main/docs/hdfs-starter.adoc
@@ -0,0 +1,30 @@
+== hdfs - Spring Boot Auto-Configuration
+
+When using hdfs with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-hdfs-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.hdfs.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hdfs.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hdfs.enabled* | Whether to enable auto configuration of the hdfs component. This is enabled by default. |  | Boolean
+| *camel.component.hdfs.j-a-a-s-configuration* | To use the given configuration for security with JAAS. The option is a javax.security.auth.login.Configuration type. |  | String
+| *camel.component.hdfs.kerberos-config-file* | To use kerberos authentication, set the value of the 'java.security.krb5.conf' environment variable to an existing file. If the environment variable is already set, warn if different than the specified parameter |  | String
+| *camel.component.hdfs.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-hipchat-starter/src/main/docs/hipchat-starter.adoc b/components-starter/camel-hipchat-starter/src/main/docs/hipchat-starter.adoc
new file mode 100644
index 0000000..d06a64a
--- /dev/null
+++ b/components-starter/camel-hipchat-starter/src/main/docs/hipchat-starter.adoc
@@ -0,0 +1,28 @@
+== hipchat - Spring Boot Auto-Configuration
+
+When using hipchat with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-hipchat-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.hipchat.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.hipchat.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.hipchat.enabled* | Whether to enable auto configuration of the hipchat component. This is enabled by default. |  | Boolean
+| *camel.component.hipchat.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-hl7-starter/src/main/docs/hl7-starter.adoc b/components-starter/camel-hl7-starter/src/main/docs/hl7-starter.adoc
new file mode 100644
index 0000000..4d0f49d
--- /dev/null
+++ b/components-starter/camel-hl7-starter/src/main/docs/hl7-starter.adoc
@@ -0,0 +1,29 @@
+== hl7 - Spring Boot Auto-Configuration
+
+When using hl7 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-hl7-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.hl7.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.hl7.enabled* | Whether to enable auto configuration of the hl7 data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.hl7.validate* | Whether to validate the HL7 message Is by default true. | true | Boolean
+| *camel.language.hl7terser.enabled* | Whether to enable auto configuration of the hl7terser language. This is enabled by default. |  | Boolean
+| *camel.language.hl7terser.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+|===
+
diff --git a/components-starter/camel-http-starter/src/main/docs/http-starter.adoc b/components-starter/camel-http-starter/src/main/docs/http-starter.adoc
new file mode 100644
index 0000000..15474ad
--- /dev/null
+++ b/components-starter/camel-http-starter/src/main/docs/http-starter.adoc
@@ -0,0 +1,44 @@
+== http - Spring Boot Auto-Configuration
+
+When using http with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-http-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.http.allow-java-serialized-object* | Whether to allow java serialization when a request uses context-type=application/x-java-serialized-object. This is by default turned off. If you enable this then be aware that Java will deserialize the incoming data from the request to Java and that can be a potential security risk. | false | Boolean
+| *camel.component.http.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.http.client-connection-manager* | To use a custom and shared HttpClientConnectionManager to manage connections. If this has been configured then this is always used for all endpoints created by this component. The option is a org.apache.http.conn.HttpClientConnectionManager type. |  | String
+| *camel.component.http.connect-timeout* | Determines the timeout in milliseconds until a connection is established. A timeout value of zero is interpreted as an infinite timeout. A timeout value of zero is interpreted as an infinite timeout. A negative value is interpreted as undefined (system default). | -1 | Integer
+| *camel.component.http.connection-request-timeout* | The timeout in milliseconds used when requesting a connection from the connection manager. A timeout value of zero is interpreted as an infinite timeout. A timeout value of zero is interpreted as an infinite timeout. A negative value is interpreted as undefined (system default). | -1 | Integer
+| *camel.component.http.connection-time-to-live* | The time for connection to live, the time unit is millisecond, the default value is always keep alive. |  | Long
+| *camel.component.http.connections-per-route* | The maximum number of connections per route. | 20 | Integer
+| *camel.component.http.cookie-store* | To use a custom org.apache.http.client.CookieStore. By default the org.apache.http.impl.client.BasicCookieStore is used which is an in-memory only cookie store. Notice if bridgeEndpoint=true then the cookie store is forced to be a noop cookie store as cookie shouldn't be stored as we are just bridging (eg acting as a proxy). The option is a org.apache.http.client.CookieStore type. |  | String
+| *camel.component.http.enabled* | Whether to enable auto configuration of the http component. This is enabled by default. |  | Boolean
+| *camel.component.http.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.http.http-binding* | To use a custom HttpBinding to control the mapping between Camel message and HttpClient. The option is a org.apache.camel.http.common.HttpBinding type. |  | String
+| *camel.component.http.http-client-configurer* | To use the custom HttpClientConfigurer to perform configuration of the HttpClient that will be used. The option is a org.apache.camel.component.http.HttpClientConfigurer type. |  | String
+| *camel.component.http.http-configuration* | To use the shared HttpConfiguration as base configuration. The option is a org.apache.camel.http.common.HttpConfiguration type. |  | String
+| *camel.component.http.http-context* | To use a custom org.apache.http.protocol.HttpContext when executing requests. The option is a org.apache.http.protocol.HttpContext type. |  | String
+| *camel.component.http.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.http.max-total-connections* | The maximum number of connections. | 200 | Integer
+| *camel.component.http.socket-timeout* | Defines the socket timeout in milliseconds, which is the timeout for waiting for data or, put differently, a maximum period inactivity between two consecutive data packets). A timeout value of zero is interpreted as an infinite timeout. A negative value is interpreted as undefined (system default). | -1 | Integer
+| *camel.component.http.ssl-context-parameters* | To configure security using SSLContextParameters. Important: Only one instance of org.apache.camel.support.jsse.SSLContextParameters is supported per HttpComponent. If you need to use 2 or more different instances, you need to define a new HttpComponent per instance you need. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.http.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+| *camel.component.http.x509-hostname-verifier* | To use a custom X509HostnameVerifier such as DefaultHostnameVerifier or NoopHostnameVerifier. The option is a javax.net.ssl.HostnameVerifier type. |  | String
+|===
+
diff --git a/components-starter/camel-hystrix-starter/src/main/docs/hystrix-starter.adoc b/components-starter/camel-hystrix-starter/src/main/docs/hystrix-starter.adoc
new file mode 100644
index 0000000..ee1ba2c
--- /dev/null
+++ b/components-starter/camel-hystrix-starter/src/main/docs/hystrix-starter.adoc
@@ -0,0 +1,27 @@
+== hystrix - Spring Boot Auto-Configuration
+
+When using hystrix with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-hystrix-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.hystrix.mapping.enabled* | Enables the automatic mapping of the hystrics metric servlet into the Spring web context. | true | Boolean
+| *camel.component.hystrix.mapping.path* | Endpoint for hystrix metrics servlet. | /hystrix.stream | String
+| *camel.component.hystrix.mapping.servlet-name* | Name of the Hystrix metrics servlet. | HystrixEventStreamServlet | String
+|===
+
diff --git a/components-starter/camel-ical-starter/src/main/docs/ical-starter.adoc b/components-starter/camel-ical-starter/src/main/docs/ical-starter.adoc
new file mode 100644
index 0000000..44cd83b
--- /dev/null
+++ b/components-starter/camel-ical-starter/src/main/docs/ical-starter.adoc
@@ -0,0 +1,27 @@
+== ical - Spring Boot Auto-Configuration
+
+When using ical with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ical-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.ical.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.ical.enabled* | Whether to enable auto configuration of the ical data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.ical.validating* | Whether to validate. | false | Boolean
+|===
+
diff --git a/components-starter/camel-iec60870-starter/src/main/docs/iec60870-starter.adoc b/components-starter/camel-iec60870-starter/src/main/docs/iec60870-starter.adoc
new file mode 100644
index 0000000..b2314e2
--- /dev/null
+++ b/components-starter/camel-iec60870-starter/src/main/docs/iec60870-starter.adoc
@@ -0,0 +1,42 @@
+== iec60870 - Spring Boot Auto-Configuration
+
+When using iec60870 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-iec60870-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 18 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.iec60870-client.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.iec60870-client.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.iec60870-client.default-connection-options.cause-source-address* | Whether to include the source address |  | Byte
+| *camel.component.iec60870-client.default-connection-options.connection-timeout* | Timeout in millis to wait for client to establish a connected connection. | 10000 | Integer
+| *camel.component.iec60870-client.default-connection-options.data-module-options* | Data module options |  | DataModuleOptions
+| *camel.component.iec60870-client.default-connection-options.ignore-background-scan* | Whether background scan transmissions should be ignored. | true | Boolean
+| *camel.component.iec60870-client.enabled* | Whether to enable auto configuration of the iec60870-client component. This is enabled by default. |  | Boolean
+| *camel.component.iec60870-client.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+| *camel.component.iec60870-server.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.iec60870-server.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.iec60870-server.default-connection-options.background-scan-period* |  |  | Integer
+| *camel.component.iec60870-server.default-connection-options.booleans-with-timestamp* |  |  | Boolean
+| *camel.component.iec60870-server.default-connection-options.buffering-period* |  |  | Integer
+| *camel.component.iec60870-server.default-connection-options.data-module-options* | Data module options |  | DataModuleOptions
+| *camel.component.iec60870-server.default-connection-options.floats-with-timestamp* |  |  | Boolean
+| *camel.component.iec60870-server.default-connection-options.spontaneous-duplicates* |  |  | Integer
+| *camel.component.iec60870-server.enabled* | Whether to enable auto configuration of the iec60870-server component. This is enabled by default. |  | Boolean
+| *camel.component.iec60870-server.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+|===
+
diff --git a/components-starter/camel-ignite-starter/src/main/docs/ignite-starter.adoc b/components-starter/camel-ignite-starter/src/main/docs/ignite-starter.adoc
new file mode 100644
index 0000000..265dc8f
--- /dev/null
+++ b/components-starter/camel-ignite-starter/src/main/docs/ignite-starter.adoc
@@ -0,0 +1,68 @@
+== ignite - Spring Boot Auto-Configuration
+
+When using ignite with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ignite-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 44 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ignite-cache.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ignite-cache.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.ignite-cache.configuration-resource* | Resource from where to load configuration. The option is a java.lang.Object type. |  | String
+| *camel.component.ignite-cache.enabled* | Whether to enable auto configuration of the ignite-cache component. This is enabled by default. |  | Boolean
+| *camel.component.ignite-cache.ignite* | Ignite instance. The option is a org.apache.ignite.Ignite type. |  | String
+| *camel.component.ignite-cache.ignite-configuration* | Ignite configuration. The option is a org.apache.ignite.configuration.IgniteConfiguration type. |  | String
+| *camel.component.ignite-cache.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.ignite-compute.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ignite-compute.configuration-resource* | Resource from where to load configuration. The option is a java.lang.Object type. |  | String
+| *camel.component.ignite-compute.enabled* | Whether to enable auto configuration of the ignite-compute component. This is enabled by default. |  | Boolean
+| *camel.component.ignite-compute.ignite* | Ignite instance. The option is a org.apache.ignite.Ignite type. |  | String
+| *camel.component.ignite-compute.ignite-configuration* | Ignite configuration. The option is a org.apache.ignite.configuration.IgniteConfiguration type. |  | String
+| *camel.component.ignite-compute.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.ignite-events.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ignite-events.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.ignite-events.configuration-resource* | Resource from where to load configuration. The option is a java.lang.Object type. |  | String
+| *camel.component.ignite-events.enabled* | Whether to enable auto configuration of the ignite-events component. This is enabled by default. |  | Boolean
+| *camel.component.ignite-events.ignite* | Ignite instance. The option is a org.apache.ignite.Ignite type. |  | String
+| *camel.component.ignite-events.ignite-configuration* | Ignite configuration. The option is a org.apache.ignite.configuration.IgniteConfiguration type. |  | String
+| *camel.component.ignite-idgen.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ignite-idgen.configuration-resource* | Resource from where to load configuration. The option is a java.lang.Object type. |  | String
+| *camel.component.ignite-idgen.enabled* | Whether to enable auto configuration of the ignite-idgen component. This is enabled by default. |  | Boolean
+| *camel.component.ignite-idgen.ignite* | Ignite instance. The option is a org.apache.ignite.Ignite type. |  | String
+| *camel.component.ignite-idgen.ignite-configuration* | Ignite configuration. The option is a org.apache.ignite.configuration.IgniteConfiguration type. |  | String
+| *camel.component.ignite-idgen.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.ignite-messaging.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ignite-messaging.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.ignite-messaging.configuration-resource* | Resource from where to load configuration. The option is a java.lang.Object type. |  | String
+| *camel.component.ignite-messaging.enabled* | Whether to enable auto configuration of the ignite-messaging component. This is enabled by default. |  | Boolean
+| *camel.component.ignite-messaging.ignite* | Ignite instance. The option is a org.apache.ignite.Ignite type. |  | String
+| *camel.component.ignite-messaging.ignite-configuration* | Ignite configuration. The option is a org.apache.ignite.configuration.IgniteConfiguration type. |  | String
+| *camel.component.ignite-messaging.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is pro [...]
+| *camel.component.ignite-queue.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ignite-queue.configuration-resource* | Resource from where to load configuration. The option is a java.lang.Object type. |  | String
+| *camel.component.ignite-queue.enabled* | Whether to enable auto configuration of the ignite-queue component. This is enabled by default. |  | Boolean
+| *camel.component.ignite-queue.ignite* | Ignite instance. The option is a org.apache.ignite.Ignite type. |  | String
+| *camel.component.ignite-queue.ignite-configuration* | Ignite configuration. The option is a org.apache.ignite.configuration.IgniteConfiguration type. |  | String
+| *camel.component.ignite-queue.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.ignite-set.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ignite-set.configuration-resource* | Resource from where to load configuration. The option is a java.lang.Object type. |  | String
+| *camel.component.ignite-set.enabled* | Whether to enable auto configuration of the ignite-set component. This is enabled by default. |  | Boolean
+| *camel.component.ignite-set.ignite* | Ignite instance. The option is a org.apache.ignite.Ignite type. |  | String
+| *camel.component.ignite-set.ignite-configuration* | Ignite configuration. The option is a org.apache.ignite.configuration.IgniteConfiguration type. |  | String
+| *camel.component.ignite-set.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+|===
+
diff --git a/components-starter/camel-infinispan-starter/src/main/docs/infinispan-starter.adoc b/components-starter/camel-infinispan-starter/src/main/docs/infinispan-starter.adoc
new file mode 100644
index 0000000..8d58ec1
--- /dev/null
+++ b/components-starter/camel-infinispan-starter/src/main/docs/infinispan-starter.adoc
@@ -0,0 +1,48 @@
+== infinispan - Spring Boot Auto-Configuration
+
+When using infinispan with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-infinispan-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 24 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.infinispan.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.infinispan.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.infinispan.cache-container* | Default Cache container. The option is a org.infinispan.commons.api.BasicCacheContainer type. |  | String
+| *camel.component.infinispan.configuration.cache-container* | Specifies the cache Container to connect |  | BasicCacheContainer
+| *camel.component.infinispan.configuration.cache-container-configuration* | The CacheContainer configuration. Uses if the cacheContainer is not defined. Must be the following types: org.infinispan.client.hotrod.configuration.Configuration - for remote cache interaction configuration; org.infinispan.configuration.cache.Configuration - for embedded cache interaction configuration; |  | Object
+| *camel.component.infinispan.configuration.clustered-listener* | If true, the listener will be installed for the entire cluster | false | Boolean
+| *camel.component.infinispan.configuration.configuration-properties* | Implementation specific properties for the CacheManager |  | Map
+| *camel.component.infinispan.configuration.configuration-uri* | An implementation specific URI for the CacheManager |  | String
+| *camel.component.infinispan.configuration.custom-listener* | Returns the custom listener in use, if provided |  | InfinispanCustomListener
+| *camel.component.infinispan.configuration.event-types* | Specifies the set of event types to register by the consumer. Multiple event can be separated by comma. The possible event types are: CACHE_ENTRY_ACTIVATED, CACHE_ENTRY_PASSIVATED, CACHE_ENTRY_VISITED, CACHE_ENTRY_LOADED, CACHE_ENTRY_EVICTED, CACHE_ENTRY_CREATED, CACHE_ENTRY_REMOVED, CACHE_ENTRY_MODIFIED, TRANSACTION_COMPLETED, TRANSACTION_REGISTERED, CACHE_ENTRY_INVALIDATED, DATA_REHASHED, TOPOLOGY_CHANGED, PARTITION_STATUS_CHAN [...]
+| *camel.component.infinispan.configuration.flags* | A comma separated list of Flag to be applied by default on each cache invocation, not applicable to remote caches. |  | Flag[]
+| *camel.component.infinispan.configuration.hosts* | Specifies the host of the cache on Infinispan instance |  | String
+| *camel.component.infinispan.configuration.operation* | The operation to perform. |  | InfinispanOperation
+| *camel.component.infinispan.configuration.query-builder* | Specifies the query builder. |  | InfinispanQueryBuilder
+| *camel.component.infinispan.configuration.remapping-function* | Set a specific remappingFunction to use in a compute operation |  | BiFunction
+| *camel.component.infinispan.configuration.result-header* | Store the operation result in a header instead of the message body. By default, resultHeader == null and the query result is stored in the message body, any existing content in the message body is discarded. If resultHeader is set, the value is used as the name of the header to store the query result and the original message body is preserved. This value can be overridden by an in message header named: CamelInfinispanOperationR [...]
+| *camel.component.infinispan.configuration.sync* | If true, the consumer will receive notifications synchronously | true | Boolean
+| *camel.component.infinispan.customizer.embedded-cache-manager.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.infinispan.customizer.embedded-cache-manager.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.infinispan.customizer.remote-cache-manager.enabled* | Enable or disable the cache-manager customizer. | true | Boolean
+| *camel.component.infinispan.customizer.remote-cache-manager.override* | Configure if the cache manager eventually set on the component should be overridden by the customizer. | false | Boolean
+| *camel.component.infinispan.enabled* | Whether to enable auto configuration of the infinispan component. This is enabled by default. |  | Boolean
+| *camel.component.infinispan.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+| *camel.component.infinispan.configuration.command* | *Deprecated* The operation to perform. | PUT | String
+|===
+
diff --git a/components-starter/camel-influxdb-starter/src/main/docs/influxdb-starter.adoc b/components-starter/camel-influxdb-starter/src/main/docs/influxdb-starter.adoc
new file mode 100644
index 0000000..9c4ce84
--- /dev/null
+++ b/components-starter/camel-influxdb-starter/src/main/docs/influxdb-starter.adoc
@@ -0,0 +1,27 @@
+== influxdb - Spring Boot Auto-Configuration
+
+When using influxdb with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-influxdb-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.influxdb.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.influxdb.enabled* | Whether to enable auto configuration of the influxdb component. This is enabled by default. |  | Boolean
+| *camel.component.influxdb.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+|===
+
diff --git a/components-starter/camel-iota-starter/src/main/docs/iota-starter.adoc b/components-starter/camel-iota-starter/src/main/docs/iota-starter.adoc
new file mode 100644
index 0000000..58cd8ad
--- /dev/null
+++ b/components-starter/camel-iota-starter/src/main/docs/iota-starter.adoc
@@ -0,0 +1,27 @@
+== iota - Spring Boot Auto-Configuration
+
+When using iota with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-iota-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.iota.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.iota.enabled* | Whether to enable auto configuration of the iota component. This is enabled by default. |  | Boolean
+| *camel.component.iota.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-ipfs-starter/src/main/docs/ipfs-starter.adoc b/components-starter/camel-ipfs-starter/src/main/docs/ipfs-starter.adoc
new file mode 100644
index 0000000..acab269
--- /dev/null
+++ b/components-starter/camel-ipfs-starter/src/main/docs/ipfs-starter.adoc
@@ -0,0 +1,29 @@
+== ipfs - Spring Boot Auto-Configuration
+
+When using ipfs with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ipfs-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ipfs.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ipfs.enabled* | Whether to enable auto configuration of the ipfs component. This is enabled by default. |  | Boolean
+| *camel.component.ipfs.ipfs-host* | The ipfs host | 127.0.0.1 | String
+| *camel.component.ipfs.ipfs-port* | The ipfs port | 5001 | Integer
+| *camel.component.ipfs.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-irc-starter/src/main/docs/irc-starter.adoc b/components-starter/camel-irc-starter/src/main/docs/irc-starter.adoc
new file mode 100644
index 0000000..9fb7521
--- /dev/null
+++ b/components-starter/camel-irc-starter/src/main/docs/irc-starter.adoc
@@ -0,0 +1,29 @@
+== irc - Spring Boot Auto-Configuration
+
+When using irc with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-irc-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.irc.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.irc.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.irc.enabled* | Whether to enable auto configuration of the irc component. This is enabled by default. |  | Boolean
+| *camel.component.irc.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.irc.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-ironmq-starter/src/main/docs/ironmq-starter.adoc b/components-starter/camel-ironmq-starter/src/main/docs/ironmq-starter.adoc
new file mode 100644
index 0000000..0d9b058
--- /dev/null
+++ b/components-starter/camel-ironmq-starter/src/main/docs/ironmq-starter.adoc
@@ -0,0 +1,28 @@
+== ironmq - Spring Boot Auto-Configuration
+
+When using ironmq with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ironmq-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ironmq.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ironmq.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.ironmq.enabled* | Whether to enable auto configuration of the ironmq component. This is enabled by default. |  | Boolean
+| *camel.component.ironmq.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-jackson-starter/src/main/docs/jackson-starter.adoc b/components-starter/camel-jackson-starter/src/main/docs/jackson-starter.adoc
new file mode 100644
index 0000000..aee3251
--- /dev/null
+++ b/components-starter/camel-jackson-starter/src/main/docs/jackson-starter.adoc
@@ -0,0 +1,44 @@
+== jackson - Spring Boot Auto-Configuration
+
+When using jackson with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jackson-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.json-jackson.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.json-jackson.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.json-jackson.auto-discover-object-mapper* | If set to true then Jackson will lookup for an objectMapper into the registry | false | Boolean
+| *camel.dataformat.json-jackson.collection-type-name* | Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default. |  | String
+| *camel.dataformat.json-jackson.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.json-jackson.disable-features* | Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.json-jackson.enable-features* | Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.json-jackson.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.json-jackson.enabled* | Whether to enable auto configuration of the json-jackson data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.json-jackson.include* | If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL |  | String
+| *camel.dataformat.json-jackson.json-view* | When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations |  | Class
+| *camel.dataformat.json-jackson.module-class-names* | To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma. |  | String
+| *camel.dataformat.json-jackson.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma. |  | String
+| *camel.dataformat.json-jackson.object-mapper* | Lookup and use the existing ObjectMapper with the given id when using Jackson. |  | String
+| *camel.dataformat.json-jackson.permissions* | Adds permissions that controls which Java packages and classes XStream is allowed to use during unmarshal from xml/json to Java beans. A permission must be configured either here or globally using a JVM system property. The permission can be specified in a syntax where a plus sign is allow, and minus sign is deny. Wildcards is supported by using . as prefix. For example to allow com.foo and all subpackages then specfy com.foo.. Multiple per [...]
+| *camel.dataformat.json-jackson.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.json-jackson.timezone* | If set then Jackson will use the Timezone when marshalling/unmarshalling. This option will have no effect on the others Json DataFormat, like gson, fastjson and xstream. |  | String
+| *camel.dataformat.json-jackson.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.json-jackson.use-default-object-mapper* | Whether to lookup and use default Jackson ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.json-jackson.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+
diff --git a/components-starter/camel-jacksonxml-starter/src/main/docs/jacksonxml-starter.adoc b/components-starter/camel-jacksonxml-starter/src/main/docs/jacksonxml-starter.adoc
new file mode 100644
index 0000000..1b67670
--- /dev/null
+++ b/components-starter/camel-jacksonxml-starter/src/main/docs/jacksonxml-starter.adoc
@@ -0,0 +1,40 @@
+== jacksonxml - Spring Boot Auto-Configuration
+
+When using jacksonxml with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jacksonxml-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 16 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.jacksonxml.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.jacksonxml.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.jacksonxml.collection-type-name* | Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default. |  | String
+| *camel.dataformat.jacksonxml.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.jacksonxml.disable-features* | Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.jacksonxml.enable-features* | Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.jacksonxml.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.jacksonxml.enabled* | Whether to enable auto configuration of the jacksonxml data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.jacksonxml.include* | If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL |  | String
+| *camel.dataformat.jacksonxml.json-view* | When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations |  | Class
+| *camel.dataformat.jacksonxml.module-class-names* | To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma. |  | String
+| *camel.dataformat.jacksonxml.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma. |  | String
+| *camel.dataformat.jacksonxml.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.jacksonxml.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.jacksonxml.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+| *camel.dataformat.jacksonxml.xml-mapper* | Lookup and use the existing XmlMapper with the given id. |  | String
+|===
+
diff --git a/components-starter/camel-jaxb-starter/src/main/docs/jaxb-starter.adoc b/components-starter/camel-jaxb-starter/src/main/docs/jaxb-starter.adoc
new file mode 100644
index 0000000..84d7826
--- /dev/null
+++ b/components-starter/camel-jaxb-starter/src/main/docs/jaxb-starter.adoc
@@ -0,0 +1,43 @@
+== jaxb - Spring Boot Auto-Configuration
+
+When using jaxb with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jaxb-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 19 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.jaxb.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.jaxb.context-path* | Package name where your JAXB classes are located. |  | String
+| *camel.dataformat.jaxb.enabled* | Whether to enable auto configuration of the jaxb data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.jaxb.encoding* | To overrule and use a specific encoding |  | String
+| *camel.dataformat.jaxb.filter-non-xml-chars* | To ignore non xml characheters and replace them with an empty space. | false | Boolean
+| *camel.dataformat.jaxb.fragment* | To turn on marshalling XML fragment trees. By default JAXB looks for XmlRootElement annotation on given class to operate on whole XML tree. This is useful but not always - sometimes generated code does not have XmlRootElement annotation, sometimes you need unmarshall only part of tree. In that case you can use partial unmarshalling. To enable this behaviours you need set property partClass. Camel will pass this class to JAXB's unmarshaler. | false | Boolean
+| *camel.dataformat.jaxb.ignore-j-a-x-b-element* | Whether to ignore JAXBElement elements - only needed to be set to false in very special use-cases. | false | Boolean
+| *camel.dataformat.jaxb.jaxb-provider-properties* | Refers to a custom java.util.Map to lookup in the registry containing custom JAXB provider properties to be used with the JAXB marshaller. |  | String
+| *camel.dataformat.jaxb.must-be-j-a-x-b-element* | Whether marhsalling must be java objects with JAXB annotations. And if not then it fails. This option can be set to false to relax that, such as when the data is already in XML format. | false | Boolean
+| *camel.dataformat.jaxb.namespace-prefix-ref* | When marshalling using JAXB or SOAP then the JAXB implementation will automatic assign namespace prefixes, such as ns2, ns3, ns4 etc. To control this mapping, Camel allows you to refer to a map which contains the desired mapping. |  | String
+| *camel.dataformat.jaxb.no-namespace-schema-location* | To define the location of the namespaceless schema |  | String
+| *camel.dataformat.jaxb.object-factory* | Whether to allow using ObjectFactory classes to create the POJO classes during marshalling. This only applies to POJO classes that has not been annotated with JAXB and providing jaxb.index descriptor files. | false | Boolean
+| *camel.dataformat.jaxb.part-class* | Name of class used for fragment parsing. See more details at the fragment option. |  | String
+| *camel.dataformat.jaxb.part-namespace* | XML namespace to use for fragment parsing. See more details at the fragment option. |  | String
+| *camel.dataformat.jaxb.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.jaxb.schema* | To validate against an existing schema. Your can use the prefix classpath:, file: or http: to specify how the resource should by resolved. You can separate multiple schema files by using the ',' character. |  | String
+| *camel.dataformat.jaxb.schema-location* | To define the location of the schema |  | String
+| *camel.dataformat.jaxb.schema-severity-level* | Sets the schema severity level to use when validating against a schema. This level determines the minimum severity error that triggers JAXB to stop continue parsing. The default value of 0 (warning) means that any error (warning, error or fatal error) will trigger JAXB to stop. There are the following three levels: 0=warning, 1=error, 2=fatal error. | 0 | Integer
+| *camel.dataformat.jaxb.xml-stream-writer-wrapper* | To use a custom xml stream writer. |  | String
+|===
+
diff --git a/components-starter/camel-jaxp-starter/src/main/docs/jaxp-starter.adoc b/components-starter/camel-jaxp-starter/src/main/docs/jaxp-starter.adoc
new file mode 100644
index 0000000..d13cd1c
--- /dev/null
+++ b/components-starter/camel-jaxp-starter/src/main/docs/jaxp-starter.adoc
@@ -0,0 +1,27 @@
+== jaxp - Spring Boot Auto-Configuration
+
+When using jaxp with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jaxp-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.language.xtokenize.enabled* | Whether to enable auto configuration of the xtokenize language. This is enabled by default. |  | Boolean
+| *camel.language.xtokenize.mode* | The extraction mode. The available extraction modes are: i - injecting the contextual namespace bindings into the extracted token (default) w - wrapping the extracted token in its ancestor context u - unwrapping the extracted token to its child content t - extracting the text content of the specified element |  | String
+| *camel.language.xtokenize.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+|===
+
diff --git a/components-starter/camel-jbpm-starter/src/main/docs/jbpm-starter.adoc b/components-starter/camel-jbpm-starter/src/main/docs/jbpm-starter.adoc
new file mode 100644
index 0000000..ebb72c0
--- /dev/null
+++ b/components-starter/camel-jbpm-starter/src/main/docs/jbpm-starter.adoc
@@ -0,0 +1,28 @@
+== jbpm - Spring Boot Auto-Configuration
+
+When using jbpm with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jbpm-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jbpm.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jbpm.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jbpm.enabled* | Whether to enable auto configuration of the jbpm component. This is enabled by default. |  | Boolean
+| *camel.component.jbpm.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-jcache-starter/src/main/docs/jcache-starter.adoc b/components-starter/camel-jcache-starter/src/main/docs/jcache-starter.adoc
new file mode 100644
index 0000000..38acb5d
--- /dev/null
+++ b/components-starter/camel-jcache-starter/src/main/docs/jcache-starter.adoc
@@ -0,0 +1,33 @@
+== jcache - Spring Boot Auto-Configuration
+
+When using jcache with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jcache-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 9 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jcache.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jcache.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jcache.cache-configuration* | A Configuration for the Cache. The option is a javax.cache.configuration.Configuration type. |  | String
+| *camel.component.jcache.cache-configuration-properties* | Properties to configure jcache |  | Map
+| *camel.component.jcache.cache-configuration-properties-ref* | References to an existing Properties or Map to lookup in the registry to use for configuring jcache. |  | String
+| *camel.component.jcache.caching-provider* | The fully qualified class name of the javax.cache.spi.CachingProvider |  | String
+| *camel.component.jcache.configuration-uri* | An implementation specific URI for the CacheManager |  | String
+| *camel.component.jcache.enabled* | Whether to enable auto configuration of the jcache component. This is enabled by default. |  | Boolean
+| *camel.component.jcache.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-jclouds-starter/src/main/docs/jclouds-starter.adoc b/components-starter/camel-jclouds-starter/src/main/docs/jclouds-starter.adoc
new file mode 100644
index 0000000..1f1a9b7
--- /dev/null
+++ b/components-starter/camel-jclouds-starter/src/main/docs/jclouds-starter.adoc
@@ -0,0 +1,30 @@
+== jclouds - Spring Boot Auto-Configuration
+
+When using jclouds with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jclouds-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jclouds.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jclouds.blob-stores* | To use the given BlobStore which must be configured when using blobstore. |  | List
+| *camel.component.jclouds.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jclouds.compute-services* | To use the given ComputeService which must be configured when use compute. |  | List
+| *camel.component.jclouds.enabled* | Whether to enable auto configuration of the jclouds component. This is enabled by default. |  | Boolean
+| *camel.component.jclouds.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-jcr-starter/src/main/docs/jcr-starter.adoc b/components-starter/camel-jcr-starter/src/main/docs/jcr-starter.adoc
new file mode 100644
index 0000000..f753ce4
--- /dev/null
+++ b/components-starter/camel-jcr-starter/src/main/docs/jcr-starter.adoc
@@ -0,0 +1,28 @@
+== jcr - Spring Boot Auto-Configuration
+
+When using jcr with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jcr-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jcr.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jcr.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jcr.enabled* | Whether to enable auto configuration of the jcr component. This is enabled by default. |  | Boolean
+| *camel.component.jcr.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-jdbc-starter/src/main/docs/jdbc-starter.adoc b/components-starter/camel-jdbc-starter/src/main/docs/jdbc-starter.adoc
new file mode 100644
index 0000000..cf9e5a1
--- /dev/null
+++ b/components-starter/camel-jdbc-starter/src/main/docs/jdbc-starter.adoc
@@ -0,0 +1,28 @@
+== jdbc - Spring Boot Auto-Configuration
+
+When using jdbc with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jdbc-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jdbc.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jdbc.data-source* | To use the DataSource instance instead of looking up the data source by name from the registry. The option is a javax.sql.DataSource type. |  | String
+| *camel.component.jdbc.enabled* | Whether to enable auto configuration of the jdbc component. This is enabled by default. |  | Boolean
+| *camel.component.jdbc.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-jetty-starter/src/main/docs/jetty-starter.adoc b/components-starter/camel-jetty-starter/src/main/docs/jetty-starter.adoc
new file mode 100644
index 0000000..b2e67e7
--- /dev/null
+++ b/components-starter/camel-jetty-starter/src/main/docs/jetty-starter.adoc
@@ -0,0 +1,57 @@
+== jetty - Spring Boot Auto-Configuration
+
+When using jetty with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jetty-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 33 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jetty.allow-java-serialized-object* | Whether to allow java serialization when a request uses context-type=application/x-java-serialized-object. This is by default turned off. If you enable this then be aware that Java will deserialize the incoming data from the request to Java and that can be a potential security risk. | false | Boolean
+| *camel.component.jetty.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jetty.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jetty.continuation-timeout* | Allows to set a timeout in millis when using Jetty as consumer (server). By default Jetty uses 30000. You can use a value of = 0 to never expire. If a timeout occurs then the request will be expired and Jetty will return back a http error 503 to the client. This option is only in use when using Jetty with the Asynchronous Routing Engine. | 30000 | Long
+| *camel.component.jetty.enable-jmx* | If this option is true, Jetty JMX support will be enabled for this endpoint. | false | Boolean
+| *camel.component.jetty.enabled* | Whether to enable auto configuration of the jetty component. This is enabled by default. |  | Boolean
+| *camel.component.jetty.error-handler* | This option is used to set the ErrorHandler that Jetty server uses. The option is a org.eclipse.jetty.server.handler.ErrorHandler type. |  | String
+| *camel.component.jetty.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.jetty.http-binding* | Not to be used - use JettyHttpBinding instead. The option is a org.apache.camel.http.common.HttpBinding type. |  | String
+| *camel.component.jetty.http-configuration* | Jetty component does not use HttpConfiguration. The option is a org.apache.camel.http.common.HttpConfiguration type. |  | String
+| *camel.component.jetty.jetty-http-binding* | To use a custom org.apache.camel.component.jetty.JettyHttpBinding, which are used to customize how a response should be written for the producer. The option is a org.apache.camel.component.jetty.JettyHttpBinding type. |  | String
+| *camel.component.jetty.keystore* | Specifies the location of the Java keystore file, which contains the Jetty server's own X.509 certificate in a key entry. |  | String
+| *camel.component.jetty.max-threads* | To set a value for maximum number of threads in server thread pool. Notice that both a min and max size must be configured. |  | Integer
+| *camel.component.jetty.mb-container* | To use a existing configured org.eclipse.jetty.jmx.MBeanContainer if JMX is enabled that Jetty uses for registering mbeans. The option is a org.eclipse.jetty.jmx.MBeanContainer type. |  | String
+| *camel.component.jetty.min-threads* | To set a value for minimum number of threads in server thread pool. Notice that both a min and max size must be configured. |  | Integer
+| *camel.component.jetty.proxy-host* | To use a http proxy to configure the hostname. |  | String
+| *camel.component.jetty.proxy-port* | To use a http proxy to configure the port number. |  | Integer
+| *camel.component.jetty.request-buffer-size* | Allows to configure a custom value of the request buffer size on the Jetty connectors. |  | Integer
+| *camel.component.jetty.request-header-size* | Allows to configure a custom value of the request header size on the Jetty connectors. |  | Integer
+| *camel.component.jetty.response-buffer-size* | Allows to configure a custom value of the response buffer size on the Jetty connectors. |  | Integer
+| *camel.component.jetty.response-header-size* | Allows to configure a custom value of the response header size on the Jetty connectors. |  | Integer
+| *camel.component.jetty.send-server-version* | If the option is true, jetty will send the server header with the jetty version information to the client which sends the request. NOTE please make sure there is no any other camel-jetty endpoint is share the same port, otherwise this option may not work as expected. | true | Boolean
+| *camel.component.jetty.socket-connector-properties* | A map which contains general HTTP connector properties. Uses the same principle as sslSocketConnectorProperties. |  | Map
+| *camel.component.jetty.socket-connectors* | A map which contains per port number specific HTTP connectors. Uses the same principle as sslSocketConnectors. |  | Map
+| *camel.component.jetty.ssl-context-parameters* | To configure security using SSLContextParameters. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.jetty.ssl-key-password* | The key password, which is used to access the certificate's key entry in the keystore (this is the same password that is supplied to the keystore command's -keypass option). |  | String
+| *camel.component.jetty.ssl-password* | The ssl password, which is required to access the keystore file (this is the same password that is supplied to the keystore command's -storepass option). |  | String
+| *camel.component.jetty.ssl-socket-connector-properties* | A map which contains general SSL connector properties. |  | Map
+| *camel.component.jetty.ssl-socket-connectors* | A map which contains per port number specific SSL connectors. |  | Map
+| *camel.component.jetty.thread-pool* | To use a custom thread pool for the server. This option should only be used in special circumstances. The option is a org.eclipse.jetty.util.thread.ThreadPool type. |  | String
+| *camel.component.jetty.use-continuation* | Whether or not to use Jetty continuations for the Jetty Server. | true | Boolean
+| *camel.component.jetty.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters | false | Boolean
+| *camel.component.jetty.use-x-forwarded-for-header* | To use the X-Forwarded-For header in HttpServletRequest.getRemoteAddr. | false | Boolean
+|===
+
diff --git a/components-starter/camel-jgroups-raft-starter/src/main/docs/jgroups-raft-starter.adoc b/components-starter/camel-jgroups-raft-starter/src/main/docs/jgroups-raft-starter.adoc
new file mode 100644
index 0000000..e0ef90f
--- /dev/null
+++ b/components-starter/camel-jgroups-raft-starter/src/main/docs/jgroups-raft-starter.adoc
@@ -0,0 +1,37 @@
+== jgroups-raft - Spring Boot Auto-Configuration
+
+When using jgroups-raft with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jgroups-raft-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 13 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jgroups-raft.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jgroups-raft.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jgroups-raft.channel-properties* | Specifies configuration properties of the RaftHandle JChannel used by the endpoint (ignored if raftHandle ref is provided). | raft.xml | String
+| *camel.component.jgroups-raft.enabled* | Whether to enable auto configuration of the jgroups-raft component. This is enabled by default. |  | Boolean
+| *camel.component.jgroups-raft.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.jgroups-raft.raft-handle* | RaftHandle to use. The option is a org.jgroups.raft.RaftHandle type. |  | String
+| *camel.component.jgroups-raft.raft-id* | Unique raftId to use. |  | String
+| *camel.component.jgroups-raft.state-machine* | StateMachine to use. The option is a org.jgroups.protocols.raft.StateMachine type. |  | String
+| *camel.component.jgroups.raft.cluster.service.enabled* | Sets if the jgroups raft cluster service should be enabled or not, default is false. | false | Boolean
+| *camel.component.jgroups.raft.cluster.service.id* | Cluster Service ID |  | String
+| *camel.component.jgroups.raft.cluster.service.jgroups-raft-cluster-name* | JGroups Cluster name |  | String
+| *camel.component.jgroups.raft.cluster.service.jgroups-raft-config* | JGrups-raft configuration File name |  | String
+| *camel.component.jgroups.raft.cluster.service.raft-id* | JGroups-raft ID |  | String
+|===
+
diff --git a/components-starter/camel-jgroups-starter/src/main/docs/jgroups-starter.adoc b/components-starter/camel-jgroups-starter/src/main/docs/jgroups-starter.adoc
new file mode 100644
index 0000000..60a9ede
--- /dev/null
+++ b/components-starter/camel-jgroups-starter/src/main/docs/jgroups-starter.adoc
@@ -0,0 +1,35 @@
+== jgroups - Spring Boot Auto-Configuration
+
+When using jgroups with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jgroups-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 11 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jgroups.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jgroups.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jgroups.channel* | Channel to use. The option is a org.jgroups.JChannel type. |  | String
+| *camel.component.jgroups.channel-properties* | Specifies configuration properties of the JChannel used by the endpoint. |  | String
+| *camel.component.jgroups.enable-view-messages* | If set to true, the consumer endpoint will receive org.jgroups.View messages as well (not only org.jgroups.Message instances). By default only regular messages are consumed by the endpoint. | false | Boolean
+| *camel.component.jgroups.enabled* | Whether to enable auto configuration of the jgroups component. This is enabled by default. |  | Boolean
+| *camel.component.jgroups.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.jgroups.lock.cluster.service.enabled* | Sets if the jgroups lock cluster service should be enabled or not, default is false. | false | Boolean
+| *camel.component.jgroups.lock.cluster.service.id* | Cluster Service ID |  | String
+| *camel.component.jgroups.lock.cluster.service.jgroups-cluster-name* | JGroups Cluster name |  | String
+| *camel.component.jgroups.lock.cluster.service.jgroups-config* | JGrups configuration File name |  | String
+|===
+
diff --git a/components-starter/camel-jing-starter/src/main/docs/jing-starter.adoc b/components-starter/camel-jing-starter/src/main/docs/jing-starter.adoc
new file mode 100644
index 0000000..01e9f583
--- /dev/null
+++ b/components-starter/camel-jing-starter/src/main/docs/jing-starter.adoc
@@ -0,0 +1,27 @@
+== jing - Spring Boot Auto-Configuration
+
+When using jing with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jing-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jing.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jing.enabled* | Whether to enable auto configuration of the jing component. This is enabled by default. |  | Boolean
+| *camel.component.jing.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-jira-starter/src/main/docs/jira-starter.adoc b/components-starter/camel-jira-starter/src/main/docs/jira-starter.adoc
new file mode 100644
index 0000000..1e3e641
--- /dev/null
+++ b/components-starter/camel-jira-starter/src/main/docs/jira-starter.adoc
@@ -0,0 +1,36 @@
+== jira - Spring Boot Auto-Configuration
+
+When using jira with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jira-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 12 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jira.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jira.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jira.configuration.access-token* | (OAuth only) The access token generated by the Jira server. |  | String
+| *camel.component.jira.configuration.consumer-key* | (OAuth only) The consumer key from Jira settings. |  | String
+| *camel.component.jira.configuration.delay* | Time in milliseconds to elapse for the next poll. | 6000 | Integer
+| *camel.component.jira.configuration.jira-url* | The Jira server url, example: \http://my_jira.com:8081 |  | String
+| *camel.component.jira.configuration.password* | (Basic authentication only) The password to authenticate to the Jira server. Use only if username basic authentication is used. |  | String
+| *camel.component.jira.configuration.private-key* | (OAuth only) The private key generated by the client to encrypt the conversation to the server. |  | String
+| *camel.component.jira.configuration.username* | (Basic authentication only) The username to authenticate to the Jira server. Use only if OAuth is not enabled on the Jira server. Do not set the username and OAuth token parameter, if they are both set, the username basic authentication takes precedence. |  | String
+| *camel.component.jira.configuration.verification-code* | (OAuth only) The verification code from Jira generated in the first step of the authorization proccess. |  | String
+| *camel.component.jira.enabled* | Whether to enable auto configuration of the jira component. This is enabled by default. |  | Boolean
+| *camel.component.jira.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-jms-starter/src/main/docs/jms-starter.adoc b/components-starter/camel-jms-starter/src/main/docs/jms-starter.adoc
new file mode 100644
index 0000000..8107850
--- /dev/null
+++ b/components-starter/camel-jms-starter/src/main/docs/jms-starter.adoc
@@ -0,0 +1,109 @@
+== jms - Spring Boot Auto-Configuration
+
+When using jms with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jms-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 85 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jms.accept-messages-while-stopping* | Specifies whether the consumer accept messages while it is stopping. You may consider enabling this option, if you start and stop JMS routes at runtime, while there are still messages enqueued on the queue. If this option is false, and you stop the JMS route, then messages may be rejected, and the JMS broker would have to attempt redeliveries, which yet again may be rejected, and eventually the message may be moved at a dead letter [...]
+| *camel.component.jms.acknowledgement-mode* | The JMS acknowledgement mode defined as an Integer. Allows you to set vendor-specific extensions to the acknowledgment mode. For the regular modes, it is preferable to use the acknowledgementModeName instead. |  | Integer
+| *camel.component.jms.acknowledgement-mode-name* | The JMS acknowledgement name, which is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | AUTO_ACKNOWLEDGE | String
+| *camel.component.jms.allow-additional-headers* | This option is used to allow additional headers which may have values that are invalid according to JMS specification. For example some message systems such as WMQ do this with header names using prefix JMS_IBM_MQMD_ containing values with byte array or other invalid types. You can specify multiple header names separated by comma, and use as suffix for wildcard matching. |  | String
+| *camel.component.jms.allow-auto-wired-connection-factory* | Whether to auto-discover ConnectionFactory from the registry, if no connection factory has been configured. If only one instance of ConnectionFactory is found then it will be used. This is enabled by default. | false | Boolean
+| *camel.component.jms.allow-auto-wired-destination-resolver* | Whether to auto-discover DestinationResolver from the registry, if no destination resolver has been configured. If only one instance of DestinationResolver is found then it will be used. This is enabled by default. | false | Boolean
+| *camel.component.jms.allow-null-body* | Whether to allow sending messages with no body. If this option is false and the message body is null, then an JMSException is thrown. | true | Boolean
+| *camel.component.jms.allow-reply-manager-quick-stop* | Whether the DefaultMessageListenerContainer used in the reply managers for request-reply messaging allow the DefaultMessageListenerContainer.runningAllowed flag to quick stop in case JmsConfiguration#isAcceptMessagesWhileStopping is enabled, and org.apache.camel.CamelContext is currently being stopped. This quick stop ability is enabled by default in the regular JMS consumers but to enable for reply managers you must enable this fl [...]
+| *camel.component.jms.always-copy-message* | If true, Camel will always make a JMS message copy of the message when it is passed to the producer for sending. Copying the message is needed in some situations, such as when a replyToDestinationSelectorName is set (incidentally, Camel will set the alwaysCopyMessage option to true, if a replyToDestinationSelectorName is set). | false | Boolean
+| *camel.component.jms.async-consumer* | Whether the JmsConsumer processes the Exchange asynchronously. If enabled then the JmsConsumer may pickup the next message from the JMS queue, while the previous message is being processed asynchronously (by the Asynchronous Routing Engine). This means that messages may be processed not 100% strictly in order. If disabled (as default) then the Exchange is fully processed before the JmsConsumer will pickup the next message from the JMS queue. Note  [...]
+| *camel.component.jms.async-start-listener* | Whether to startup the JmsConsumer message listener asynchronously, when starting a route. For example if a JmsConsumer cannot get a connection to a remote JMS broker, then it may block while retrying and/or failover. This will cause Camel to block while starting routes. By setting this option to true, you will let routes startup, while the JmsConsumer connects to the JMS broker using a dedicated thread in asynchronous mode. If this option i [...]
+| *camel.component.jms.async-stop-listener* | Whether to stop the JmsConsumer message listener asynchronously, when stopping a route. | false | Boolean
+| *camel.component.jms.auto-startup* | Specifies whether the consumer container should auto-startup. | true | Boolean
+| *camel.component.jms.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jms.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jms.cache-level* | Sets the cache level by ID for the underlying JMS resources. See cacheLevelName option for more details. |  | Integer
+| *camel.component.jms.cache-level-name* | Sets the cache level by name for the underlying JMS resources. Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER, CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See the Spring documentation and Transactions Cache Levels for more information. | CACHE_AUTO | String
+| *camel.component.jms.client-id* | Sets the JMS client ID to use. Note that this value, if specified, must be unique and can only be used by a single JMS connection instance. It is typically only required for durable topic subscriptions. If using Apache ActiveMQ you may prefer to use Virtual Topics instead. |  | String
+| *camel.component.jms.concurrent-consumers* | Specifies the default number of concurrent consumers when consuming from JMS (not for request/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. When doing request/reply over JMS then the option replyToConcurrentConsumers is used to control number of concurrent consumers on the reply message listener. | 1 | Integer
+| *camel.component.jms.configuration* | To use a shared JMS configuration. The option is a org.apache.camel.component.jms.JmsConfiguration type. |  | String
+| *camel.component.jms.connection-factory* | The connection factory to be use. A connection factory must be configured either on the component or endpoint. The option is a javax.jms.ConnectionFactory type. |  | String
+| *camel.component.jms.correlation-property* | Use this JMS property to correlate messages in InOut exchange pattern (request-reply) instead of JMSCorrelationID property. This allows you to exchange messages with systems that do not correlate messages using JMSCorrelationID JMS property. If used JMSCorrelationID will not be used or set by Camel. The value of here named property will be generated if not supplied in the header of the message under the same name. |  | String
+| *camel.component.jms.default-task-executor-type* | Specifies what default TaskExecutor type to use in the DefaultMessageListenerContainer, for both consumer endpoints and the ReplyTo consumer of producer endpoints. Possible values: SimpleAsync (uses Spring's SimpleAsyncTaskExecutor) or ThreadPool (uses Spring's ThreadPoolTaskExecutor with optimal values - cached threadpool-like). If not set, it defaults to the previous behaviour, which uses a cached thread pool for consumer endpoints a [...]
+| *camel.component.jms.delivery-mode* | Specifies the delivery mode to be used. Possibles values are those defined by javax.jms.DeliveryMode. NON_PERSISTENT = 1 and PERSISTENT = 2. |  | Integer
+| *camel.component.jms.delivery-persistent* | Specifies whether persistent delivery is used by default. | true | Boolean
+| *camel.component.jms.destination-resolver* | A pluggable org.springframework.jms.support.destination.DestinationResolver that allows you to use your own resolver (for example, to lookup the real destination in a JNDI registry). The option is a org.springframework.jms.support.destination.DestinationResolver type. |  | String
+| *camel.component.jms.durable-subscription-name* | The durable subscriber name for specifying durable topic subscriptions. The clientId option must be configured as well. |  | String
+| *camel.component.jms.eager-loading-of-properties* | Enables eager loading of JMS properties as soon as a message is loaded which generally is inefficient as the JMS properties may not be required but sometimes can catch early any issues with the underlying JMS provider and the use of JMS properties. See also the option eagerLoadingOfBody. | false | Boolean
+| *camel.component.jms.eager-poison-body* | If eagerLoadingOfProperties is enabled and the JMS message payload (JMS body or JMS properties) is poison (cannot be read/mapped), then set this text as the message body instead so the message can be processed (the cause of the poison are already stored as exception on the Exchange). This can be turned off by setting eagerPoisonBody=false. See also the option eagerLoadingOfProperties. | Poison JMS message due to ${exception.message} | String
+| *camel.component.jms.enabled* | Whether to enable auto configuration of the jms component. This is enabled by default. |  | Boolean
+| *camel.component.jms.error-handler* | Specifies a org.springframework.util.ErrorHandler to be invoked in case of any uncaught exceptions thrown while processing a Message. By default these exceptions will be logged at the WARN level, if no errorHandler has been configured. You can configure logging level and whether stack traces should be logged using errorHandlerLoggingLevel and errorHandlerLogStackTrace options. This makes it much easier to configure, than having to code a custom err [...]
+| *camel.component.jms.error-handler-log-stack-trace* | Allows to control whether stacktraces should be logged or not, by the default errorHandler. | true | Boolean
+| *camel.component.jms.error-handler-logging-level* | Allows to configure the default errorHandler logging level for logging uncaught exceptions. |  | LoggingLevel
+| *camel.component.jms.exception-listener* | Specifies the JMS Exception Listener that is to be notified of any underlying JMS exceptions. The option is a javax.jms.ExceptionListener type. |  | String
+| *camel.component.jms.explicit-qos-enabled* | Set if the deliveryMode, priority or timeToLive qualities of service should be used when sending messages. This option is based on Spring's JmsTemplate. The deliveryMode, priority and timeToLive options are applied to the current endpoint. This contrasts with the preserveMessageQos option, which operates at message granularity, reading QoS properties exclusively from the Camel In message headers. | false | Boolean
+| *camel.component.jms.expose-listener-session* | Specifies whether the listener session should be exposed when consuming messages. | false | Boolean
+| *camel.component.jms.force-send-original-message* | When using mapJmsMessage=false Camel will create a new JMS message to send to a new JMS destination if you touch the headers (get or set) during the route. Set this option to true to force Camel to send the original JMS message that was received. | false | Boolean
+| *camel.component.jms.format-date-headers-to-iso8601* | Sets whether date headers should be formatted according to the ISO 8601 standard. | false | Boolean
+| *camel.component.jms.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.jms.idle-consumer-limit* | Specify the limit for the number of consumers that are allowed to be idle at any given time. | 1 | Integer
+| *camel.component.jms.idle-task-execution-limit* | Specifies the limit for idle executions of a receive task, not having received any message within its execution. If this limit is reached, the task will shut down and leave receiving to other executing tasks (in the case of dynamic scheduling; see the maxConcurrentConsumers setting). There is additional doc available from Spring. | 1 | Integer
+| *camel.component.jms.include-all-j-m-s-x-properties* | Whether to include all JMSXxxx properties when mapping from JMS to Camel Message. Setting this to true will include properties such as JMSXAppID, and JMSXUserID etc. Note: If you are using a custom headerFilterStrategy then this option does not apply. | false | Boolean
+| *camel.component.jms.include-sent-j-m-s-message-i-d* | Only applicable when sending to JMS destination using InOnly (eg fire and forget). Enabling this option will enrich the Camel Exchange with the actual JMSMessageID that was used by the JMS client when the message was sent to the JMS destination. | false | Boolean
+| *camel.component.jms.jms-key-format-strategy* | Pluggable strategy for encoding and decoding JMS keys so they can be compliant with the JMS specification. Camel provides two implementations out of the box: default and passthrough. The default strategy will safely marshal dots and hyphens (. and -). The passthrough strategy leaves the key as is. Can be used for JMS brokers which do not care whether JMS header keys contain illegal characters. You can provide your own implementation of th [...]
+| *camel.component.jms.jms-operations* | Allows you to use your own implementation of the org.springframework.jms.core.JmsOperations interface. Camel uses JmsTemplate as default. Can be used for testing purpose, but not used much as stated in the spring API docs. The option is a org.springframework.jms.core.JmsOperations type. |  | String
+| *camel.component.jms.lazy-create-transaction-manager* | If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true. | true | Boolean
+| *camel.component.jms.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.jms.map-jms-message* | Specifies whether Camel should auto map the received JMS message to a suited payload type, such as javax.jms.TextMessage to a String etc. | true | Boolean
+| *camel.component.jms.max-concurrent-consumers* | Specifies the maximum number of concurrent consumers when consuming from JMS (not for request/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. When doing request/reply over JMS then the option replyToMaxConcurrentConsumers is used to control number of concurrent consumers on the reply message listener. |  | Integer
+| *camel.component.jms.max-messages-per-task* | The number of messages per task. -1 is unlimited. If you use a range for concurrent consumers (eg min max), then this option can be used to set a value to eg 100 to control how fast the consumers will shrink when less work is required. | -1 | Integer
+| *camel.component.jms.message-converter* | To use a custom Spring org.springframework.jms.support.converter.MessageConverter so you can be in control how to map to/from a javax.jms.Message. The option is a org.springframework.jms.support.converter.MessageConverter type. |  | String
+| *camel.component.jms.message-created-strategy* | To use the given MessageCreatedStrategy which are invoked when Camel creates new instances of javax.jms.Message objects when Camel is sending a JMS message. The option is a org.apache.camel.component.jms.MessageCreatedStrategy type. |  | String
+| *camel.component.jms.message-id-enabled* | When sending, specifies whether message IDs should be added. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the message ID set to null; if the provider ignores the hint, the message ID must be set to its normal unique value. | true | Boolean
+| *camel.component.jms.message-timestamp-enabled* | Specifies whether timestamps should be enabled by default on sending messages. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the timestamp set to zero; if the provider ignores the hint the timestamp must be set to its normal value. | true | Boolean
+| *camel.component.jms.password* | Password to use with the ConnectionFactory. You can also configure username/password directly on the ConnectionFactory. |  | String
+| *camel.component.jms.preserve-message-qos* | Set to true, if you want to send message using the QoS settings specified on the message, instead of the QoS settings on the JMS endpoint. The following three headers are considered JMSPriority, JMSDeliveryMode, and JMSExpiration. You can provide all or only some of them. If not provided, Camel will fall back to use the values from the endpoint instead. So, when using this option, the headers override the values from the endpoint. The explic [...]
+| *camel.component.jms.priority* | Values greater than 1 specify the message priority when sending (where 0 is the lowest priority and 9 is the highest). The explicitQosEnabled option must also be enabled in order for this option to have any effect. | 4 | Integer
+| *camel.component.jms.pub-sub-no-local* | Specifies whether to inhibit the delivery of messages published by its own connection. | false | Boolean
+| *camel.component.jms.queue-browse-strategy* | To use a custom QueueBrowseStrategy when browsing queues. The option is a org.apache.camel.component.jms.QueueBrowseStrategy type. |  | String
+| *camel.component.jms.receive-timeout* | The timeout for receiving messages (in milliseconds). | 1000 | Long
+| *camel.component.jms.recovery-interval* | Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds. | 5000 | Long
+| *camel.component.jms.reply-on-timeout-to-max-concurrent-consumers* | Specifies the maximum number of concurrent consumers for continue routing when timeout occurred when using request/reply over JMS. | 1 | Integer
+| *camel.component.jms.reply-to-cache-level-name* | Sets the cache level by name for the reply consumer when doing request/reply over JMS. This option only applies when using fixed reply queues (not temporary). Camel will by default use: CACHE_CONSUMER for exclusive or shared w/ replyToSelectorName. And CACHE_SESSION for shared without replyToSelectorName. Some JMS brokers such as IBM WebSphere may require to set the replyToCacheLevelName=CACHE_NONE to work. Note: If using temporary queu [...]
+| *camel.component.jms.reply-to-concurrent-consumers* | Specifies the default number of concurrent consumers when doing request/reply over JMS. See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. | 1 | Integer
+| *camel.component.jms.reply-to-max-concurrent-consumers* | Specifies the maximum number of concurrent consumers when using request/reply over JMS. See also the maxMessagesPerTask option to control dynamic scaling up/down of threads. |  | Integer
+| *camel.component.jms.reply-to-type* | Allows for explicitly specifying which kind of strategy to use for replyTo queues when doing request/reply over JMS. Possible values are: Temporary, Shared, or Exclusive. By default Camel will use temporary queues. However if replyTo has been configured, then Shared is used by default. This option allows you to use exclusive queues instead of shared ones. See Camel JMS documentation for more details, and especially the notes about the implications  [...]
+| *camel.component.jms.request-timeout* | The timeout for waiting for a reply when using the InOut Exchange Pattern (in milliseconds). The default is 20 seconds. You can include the header CamelJmsRequestTimeout to override this endpoint configured timeout value, and thus have per message individual timeout values. See also the requestTimeoutCheckerInterval option. | 20000 | Long
+| *camel.component.jms.request-timeout-checker-interval* | Configures how often Camel should check for timed out Exchanges when doing request/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout. | 1000 | Long
+| *camel.component.jms.stream-message-type-enabled* | Sets whether StreamMessage type is enabled or not. Message payloads of streaming kind such as files, InputStream, etc will either by sent as BytesMessage or StreamMessage. This option controls which kind will be used. By default BytesMessage is used which enforces the entire message payload to be read into memory. By enabling this option the message payload is read into memory in chunks and each chunk is then written to the StreamMess [...]
+| *camel.component.jms.subscription-durable* | Set whether to make the subscription durable. The durable subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a durable subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Only makes sense when listening to a topic (pub-sub domain), therefore this method switches the p [...]
+| *camel.component.jms.subscription-name* | Set the name of a subscription to create. To be applied in case of a topic (pub-sub domain) with a shared or durable subscription. The subscription name needs to be unique within this client's JMS client id. Default is the class name of the specified message listener. Note: Only 1 concurrent consumer (which is the default of this message listener container) is allowed for each subscription, except for a shared subscription (which requires JMS 2 [...]
+| *camel.component.jms.subscription-shared* | Set whether to make the subscription shared. The shared subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a shared subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Note that shared subscriptions may also be durable, so this flag can (and often will) be combined wit [...]
+| *camel.component.jms.task-executor* | Allows you to specify a custom task executor for consuming messages. The option is a org.springframework.core.task.TaskExecutor type. |  | String
+| *camel.component.jms.test-connection-on-startup* | Specifies whether to test the connection on startup. This ensures that when Camel starts that all the JMS consumers have a valid connection to the JMS broker. If a connection cannot be granted then Camel throws an exception on startup. This ensures that Camel is not started with failed connections. The JMS producers is tested as well. | false | Boolean
+| *camel.component.jms.time-to-live* | When sending messages, specifies the time-to-live of the message (in milliseconds). | -1 | Long
+| *camel.component.jms.transacted* | Specifies whether to use transacted mode | false | Boolean
+| *camel.component.jms.transaction-manager* | The Spring transaction manager to use. The option is a org.springframework.transaction.PlatformTransactionManager type. |  | String
+| *camel.component.jms.transaction-name* | The name of the transaction to use. |  | String
+| *camel.component.jms.transaction-timeout* | The timeout value of the transaction (in seconds), if using transacted mode. | -1 | Integer
+| *camel.component.jms.transfer-exception* | If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a javax.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option ta [...]
+| *camel.component.jms.transfer-exchange* | You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloa [...]
+| *camel.component.jms.use-message-i-d-as-correlation-i-d* | Specifies whether JMSMessageID should always be used as JMSCorrelationID for InOut messages. | false | Boolean
+| *camel.component.jms.username* | Username to use with the ConnectionFactory. You can also configure username/password directly on the ConnectionFactory. |  | String
+| *camel.component.jms.wait-for-provision-correlation-to-be-updated-counter* | Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request/reply over JMS and when the option useMessageIDAsCorrelationID is enabled. | 50 | Integer
+| *camel.component.jms.wait-for-provision-correlation-to-be-updated-thread-sleeping-time* | Interval in millis to sleep each time while waiting for provisional correlation id to be updated. | 100 | Long
+|===
+
diff --git a/components-starter/camel-jmx-starter/src/main/docs/jmx-starter.adoc b/components-starter/camel-jmx-starter/src/main/docs/jmx-starter.adoc
new file mode 100644
index 0000000..a64d2bd
--- /dev/null
+++ b/components-starter/camel-jmx-starter/src/main/docs/jmx-starter.adoc
@@ -0,0 +1,27 @@
+== jmx - Spring Boot Auto-Configuration
+
+When using jmx with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jmx-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jmx.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jmx.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jmx.enabled* | Whether to enable auto configuration of the jmx component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-johnzon-starter/src/main/docs/johnzon-starter.adoc b/components-starter/camel-johnzon-starter/src/main/docs/johnzon-starter.adoc
new file mode 100644
index 0000000..c08c213
--- /dev/null
+++ b/components-starter/camel-johnzon-starter/src/main/docs/johnzon-starter.adoc
@@ -0,0 +1,44 @@
+== johnzon - Spring Boot Auto-Configuration
+
+When using johnzon with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-johnzon-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 20 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.json-johnzon.allow-jms-type* | Used for JMS users to allow the JMSType header from the JMS spec to specify a FQN classname to use to unmarshal to. | false | Boolean
+| *camel.dataformat.json-johnzon.allow-unmarshall-type* | If enabled then Jackson is allowed to attempt to use the CamelJacksonUnmarshalType header during the unmarshalling. This should only be enabled when desired to be used. | false | Boolean
+| *camel.dataformat.json-johnzon.auto-discover-object-mapper* | If set to true then Jackson will lookup for an objectMapper into the registry | false | Boolean
+| *camel.dataformat.json-johnzon.collection-type-name* | Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default. |  | String
+| *camel.dataformat.json-johnzon.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.json-johnzon.disable-features* | Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.json-johnzon.enable-features* | Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features can be separated by comma |  | String
+| *camel.dataformat.json-johnzon.enable-jaxb-annotation-module* | Whether to enable the JAXB annotations module when using jackson. When enabled then JAXB annotations can be used by Jackson. | false | Boolean
+| *camel.dataformat.json-johnzon.enabled* | Whether to enable auto configuration of the json-johnzon data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.json-johnzon.include* | If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, you can set this option to NON_NULL |  | String
+| *camel.dataformat.json-johnzon.json-view* | When marshalling a POJO to JSON you might want to exclude certain fields from the JSON output. With Jackson you can use JSON views to accomplish this. This option is to refer to the class which has JsonView annotations |  | Class
+| *camel.dataformat.json-johnzon.module-class-names* | To use custom Jackson modules com.fasterxml.jackson.databind.Module specified as a String with FQN class names. Multiple classes can be separated by comma. |  | String
+| *camel.dataformat.json-johnzon.module-refs* | To use custom Jackson modules referred from the Camel registry. Multiple modules can be separated by comma. |  | String
+| *camel.dataformat.json-johnzon.object-mapper* | Lookup and use the existing ObjectMapper with the given id when using Jackson. |  | String
+| *camel.dataformat.json-johnzon.permissions* | Adds permissions that controls which Java packages and classes XStream is allowed to use during unmarshal from xml/json to Java beans. A permission must be configured either here or globally using a JVM system property. The permission can be specified in a syntax where a plus sign is allow, and minus sign is deny. Wildcards is supported by using . as prefix. For example to allow com.foo and all subpackages then specfy com.foo.. Multiple per [...]
+| *camel.dataformat.json-johnzon.pretty-print* | To enable pretty printing output nicely formatted. Is by default false. | false | Boolean
+| *camel.dataformat.json-johnzon.timezone* | If set then Jackson will use the Timezone when marshalling/unmarshalling. This option will have no effect on the others Json DataFormat, like gson, fastjson and xstream. |  | String
+| *camel.dataformat.json-johnzon.unmarshal-type-name* | Class name of the java type to use when unarmshalling |  | String
+| *camel.dataformat.json-johnzon.use-default-object-mapper* | Whether to lookup and use default Jackson ObjectMapper from the registry. | true | Boolean
+| *camel.dataformat.json-johnzon.use-list* | To unarmshal to a List of Map or a List of Pojo. | false | Boolean
+|===
+
diff --git a/components-starter/camel-jolt-starter/src/main/docs/jolt-starter.adoc b/components-starter/camel-jolt-starter/src/main/docs/jolt-starter.adoc
new file mode 100644
index 0000000..4e085e2
--- /dev/null
+++ b/components-starter/camel-jolt-starter/src/main/docs/jolt-starter.adoc
@@ -0,0 +1,28 @@
+== jolt - Spring Boot Auto-Configuration
+
+When using jolt with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jolt-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jolt.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jolt.enabled* | Whether to enable auto configuration of the jolt component. This is enabled by default. |  | Boolean
+| *camel.component.jolt.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.jolt.transform* | Explicitly sets the Transform to use. If not set a Transform specified by the transformDsl will be created. The option is a com.bazaarvoice.jolt.Transform type. |  | String
+|===
+
diff --git a/components-starter/camel-jooq-starter/src/main/docs/jooq-starter.adoc b/components-starter/camel-jooq-starter/src/main/docs/jooq-starter.adoc
new file mode 100644
index 0000000..2d5b3ea
--- /dev/null
+++ b/components-starter/camel-jooq-starter/src/main/docs/jooq-starter.adoc
@@ -0,0 +1,33 @@
+== jooq - Spring Boot Auto-Configuration
+
+When using jooq with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jooq-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 9 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jooq.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jooq.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jooq.configuration.consume-delete* | Delete entity after it is consumed | true | Boolean
+| *camel.component.jooq.configuration.database-configuration* |  |  | Configuration
+| *camel.component.jooq.configuration.entity-type* | JOOQ entity class |  | Class
+| *camel.component.jooq.configuration.operation* | Type of operation to execute on query |  | JooqOperation
+| *camel.component.jooq.configuration.query* | To execute plain SQL query |  | String
+| *camel.component.jooq.enabled* | Whether to enable auto configuration of the jooq component. This is enabled by default. |  | Boolean
+| *camel.component.jooq.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-jpa-starter/src/main/docs/jpa-starter.adoc b/components-starter/camel-jpa-starter/src/main/docs/jpa-starter.adoc
new file mode 100644
index 0000000..31480f6
--- /dev/null
+++ b/components-starter/camel-jpa-starter/src/main/docs/jpa-starter.adoc
@@ -0,0 +1,32 @@
+== jpa - Spring Boot Auto-Configuration
+
+When using jpa with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jpa-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 8 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jpa.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jpa.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jpa.enabled* | Whether to enable auto configuration of the jpa component. This is enabled by default. |  | Boolean
+| *camel.component.jpa.entity-manager-factory* | To use the EntityManagerFactory. This is strongly recommended to configure. The option is a javax.persistence.EntityManagerFactory type. |  | String
+| *camel.component.jpa.join-transaction* | The camel-jpa component will join transaction by default. You can use this option to turn this off, for example if you use LOCAL_RESOURCE and join transaction doesn't work with your JPA provider. This option can also be set globally on the JpaComponent, instead of having to set it on all endpoints. | true | Boolean
+| *camel.component.jpa.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.jpa.shared-entity-manager* | Whether to use Spring's SharedEntityManager for the consumer/producer. Note in most cases joinTransaction should be set to false as this is not an EXTENDED EntityManager. | false | Boolean
+| *camel.component.jpa.transaction-manager* | To use the PlatformTransactionManager for managing transactions. The option is a org.springframework.transaction.PlatformTransactionManager type. |  | String
+|===
+
diff --git a/components-starter/camel-jsch-starter/src/main/docs/jsch-starter.adoc b/components-starter/camel-jsch-starter/src/main/docs/jsch-starter.adoc
new file mode 100644
index 0000000..b93c952
--- /dev/null
+++ b/components-starter/camel-jsch-starter/src/main/docs/jsch-starter.adoc
@@ -0,0 +1,28 @@
+== jsch - Spring Boot Auto-Configuration
+
+When using jsch with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jsch-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.scp.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.scp.enabled* | Whether to enable auto configuration of the scp component. This is enabled by default. |  | Boolean
+| *camel.component.scp.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.scp.verbose-logging* | JSCH is verbose logging out of the box. Therefore we turn the logging down to DEBUG logging by default. But setting this option to true turns on the verbose logging again. | false | Boolean
+|===
+
diff --git a/components-starter/camel-jslt-starter/src/main/docs/jslt-starter.adoc b/components-starter/camel-jslt-starter/src/main/docs/jslt-starter.adoc
new file mode 100644
index 0000000..f7d9ec5
--- /dev/null
+++ b/components-starter/camel-jslt-starter/src/main/docs/jslt-starter.adoc
@@ -0,0 +1,28 @@
+== jslt - Spring Boot Auto-Configuration
+
+When using jslt with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jslt-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jslt.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jslt.enabled* | Whether to enable auto configuration of the jslt component. This is enabled by default. |  | Boolean
+| *camel.component.jslt.functions* | JSLT can be extended by plugging in functions written in Java. |  | Collection
+| *camel.component.jslt.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-json-validator-starter/src/main/docs/json-validator-starter.adoc b/components-starter/camel-json-validator-starter/src/main/docs/json-validator-starter.adoc
new file mode 100644
index 0000000..b9cdf12
--- /dev/null
+++ b/components-starter/camel-json-validator-starter/src/main/docs/json-validator-starter.adoc
@@ -0,0 +1,27 @@
+== json-validator - Spring Boot Auto-Configuration
+
+When using json-validator with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-json-validator-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.json-validator.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.json-validator.enabled* | Whether to enable auto configuration of the json-validator component. This is enabled by default. |  | Boolean
+| *camel.component.json-validator.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+|===
+
diff --git a/components-starter/camel-jsonapi-starter/src/main/docs/jsonapi-starter.adoc b/components-starter/camel-jsonapi-starter/src/main/docs/jsonapi-starter.adoc
new file mode 100644
index 0000000..1af5e71
--- /dev/null
+++ b/components-starter/camel-jsonapi-starter/src/main/docs/jsonapi-starter.adoc
@@ -0,0 +1,28 @@
+== jsonapi - Spring Boot Auto-Configuration
+
+When using jsonapi with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jsonapi-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.jsonapi.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.jsonapi.data-format-types* | The classes to take into account for the marshalling |  | Class[]
+| *camel.dataformat.jsonapi.enabled* | Whether to enable auto configuration of the jsonApi data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.jsonapi.main-format-type* | The classes to take into account while unmarshalling |  | Class
+|===
+
diff --git a/components-starter/camel-jsonpath-starter/src/main/docs/jsonpath-starter.adoc b/components-starter/camel-jsonpath-starter/src/main/docs/jsonpath-starter.adoc
new file mode 100644
index 0000000..f83c9e3
--- /dev/null
+++ b/components-starter/camel-jsonpath-starter/src/main/docs/jsonpath-starter.adoc
@@ -0,0 +1,31 @@
+== jsonpath - Spring Boot Auto-Configuration
+
+When using jsonpath with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jsonpath-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 7 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.language.jsonpath.allow-easy-predicate* | Whether to allow using the easy predicate parser to pre-parse predicates. | true | Boolean
+| *camel.language.jsonpath.allow-simple* | Whether to allow in inlined simple exceptions in the JsonPath expression | true | Boolean
+| *camel.language.jsonpath.enabled* | Whether to enable auto configuration of the jsonpath language. This is enabled by default. |  | Boolean
+| *camel.language.jsonpath.header-name* | Name of header to use as input, instead of the message body |  | String
+| *camel.language.jsonpath.suppress-exceptions* | Whether to suppress exceptions such as PathNotFoundException. | false | Boolean
+| *camel.language.jsonpath.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+| *camel.language.jsonpath.write-as-string* | Whether to write the output of each row/element as a JSON String value instead of a Map/POJO value. | false | Boolean
+|===
+
diff --git a/components-starter/camel-jt400-starter/src/main/docs/jt400-starter.adoc b/components-starter/camel-jt400-starter/src/main/docs/jt400-starter.adoc
new file mode 100644
index 0000000..d183a6c
--- /dev/null
+++ b/components-starter/camel-jt400-starter/src/main/docs/jt400-starter.adoc
@@ -0,0 +1,29 @@
+== jt400 - Spring Boot Auto-Configuration
+
+When using jt400 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-jt400-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.jt400.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.jt400.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.jt400.connection-pool* | Default connection pool used by the component. Note that this pool is lazily initialized. This is because in a scenario where the user always provides a pool, it would be wasteful for Camel to initialize and keep an idle pool. The option is a com.ibm.as400.access.AS400ConnectionPool type. |  | String
+| *camel.component.jt400.enabled* | Whether to enable auto configuration of the jt400 component. This is enabled by default. |  | Boolean
+| *camel.component.jt400.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+|===
+
diff --git a/components-starter/camel-kafka-starter/src/main/docs/kafka-starter.adoc b/components-starter/camel-kafka-starter/src/main/docs/kafka-starter.adoc
new file mode 100644
index 0000000..592f97e
--- /dev/null
+++ b/components-starter/camel-kafka-starter/src/main/docs/kafka-starter.adoc
@@ -0,0 +1,125 @@
+== kafka - Spring Boot Auto-Configuration
+
+When using kafka with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-kafka-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 101 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.kafka.allow-manual-commit* | Whether to allow doing manual commits via KafkaManualCommit. If this option is enabled then an instance of KafkaManualCommit is stored on the Exchange message header, which allows end users to access this API and perform manual offset commits via the Kafka consumer. | false | Boolean
+| *camel.component.kafka.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kafka.break-on-first-error* | This options controls what happens when a consumer is processing an exchange and it fails. If the option is false then the consumer continues to the next message and processes it. If the option is true then the consumer breaks out, and will seek back to offset of the message that caused a failure, and then re-attempt to process this message. However this can lead to endless processing of the same message if its bound to fail every time, eg [...]
+| *camel.component.kafka.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.kafka.brokers* | URL of the Kafka brokers to use. The format is host1:port1,host2:port2, and the list can be a subset of brokers or a VIP pointing to a subset of brokers. This option is known as bootstrap.servers in the Kafka documentation. |  | String
+| *camel.component.kafka.configuration.additional-properties* | Sets additional properties for either kafka consumer or kafka producer in case they can't be set directly on the camel configurations (e.g: new Kafka properties that are not reflected yet in Camel configurations), the properties have to be prefixed with additionalProperties.. E.g: additionalProperties.transactional.id=12345&additionalProperties.schema.registry.url=\http://localhost:8811/avro |  | Map
+| *camel.component.kafka.configuration.allow-manual-commit* | Whether to allow doing manual commits via KafkaManualCommit. If this option is enabled then an instance of KafkaManualCommit is stored on the Exchange message header, which allows end users to access this API and perform manual offset commits via the Kafka consumer. | false | Boolean
+| *camel.component.kafka.configuration.auto-commit-enable* | If true, periodically commit to ZooKeeper the offset of messages already fetched by the consumer. This committed offset will be used when the process fails as the position from which the new consumer will begin. | true | Boolean
+| *camel.component.kafka.configuration.auto-commit-interval-ms* | The frequency in ms that the consumer offsets are committed to zookeeper. | 5000 | Integer
+| *camel.component.kafka.configuration.auto-commit-on-stop* | Whether to perform an explicit auto commit when the consumer stops to ensure the broker has a commit from the last consumed message. This requires the option autoCommitEnable is turned on. The possible values are: sync, async, or none. And sync is the default value. | sync | String
+| *camel.component.kafka.configuration.auto-offset-reset* | What to do when there is no initial offset in ZooKeeper or if an offset is out of range: earliest : automatically reset the offset to the earliest offset latest : automatically reset the offset to the latest offset fail: throw exception to the consumer | latest | String
+| *camel.component.kafka.configuration.break-on-first-error* | This options controls what happens when a consumer is processing an exchange and it fails. If the option is false then the consumer continues to the next message and processes it. If the option is true then the consumer breaks out, and will seek back to offset of the message that caused a failure, and then re-attempt to process this message. However this can lead to endless processing of the same message if its bound to fail  [...]
+| *camel.component.kafka.configuration.brokers* | URL of the Kafka brokers to use. The format is host1:port1,host2:port2, and the list can be a subset of brokers or a VIP pointing to a subset of brokers. This option is known as bootstrap.servers in the Kafka documentation. |  | String
+| *camel.component.kafka.configuration.buffer-memory-size* | The total bytes of memory the producer can use to buffer records waiting to be sent to the server. If records are sent faster than they can be delivered to the server the producer will either block or throw an exception based on the preference specified by block.on.buffer.full.This setting should correspond roughly to the total memory the producer will use, but is not a hard bound since not all memory the producer uses is used  [...]
+| *camel.component.kafka.configuration.check-crcs* | Automatically check the CRC32 of the records consumed. This ensures no on-the-wire or on-disk corruption to the messages occurred. This check adds some overhead, so it may be disabled in cases seeking extreme performance. | true | Boolean
+| *camel.component.kafka.configuration.client-id* | The client id is a user-specified string sent in each request to help trace calls. It should logically identify the application making the request. |  | String
+| *camel.component.kafka.configuration.compression-codec* | This parameter allows you to specify the compression codec for all data generated by this producer. Valid values are none, gzip and snappy. | none | String
+| *camel.component.kafka.configuration.connection-max-idle-ms* | Close idle connections after the number of milliseconds specified by this config. | 540000 | Integer
+| *camel.component.kafka.configuration.consumer-request-timeout-ms* | The configuration controls the maximum amount of time the client will wait for the response of a request. If the response is not received before the timeout elapses the client will resend the request if necessary or fail the request if retries are exhausted. | 40000 | Integer
+| *camel.component.kafka.configuration.consumer-streams* | Number of concurrent consumers on the consumer | 10 | Integer
+| *camel.component.kafka.configuration.consumers-count* | The number of consumers that connect to kafka server | 1 | Integer
+| *camel.component.kafka.configuration.enable-idempotence* | If set to 'true' the producer will ensure that exactly one copy of each message is written in the stream. If 'false', producer retries may write duplicates of the retried message in the stream. If set to true this option will require max.in.flight.requests.per.connection to be set to 1 and retries cannot be zero and additionally acks must be set to 'all'. | false | Boolean
+| *camel.component.kafka.configuration.fetch-max-bytes* | The maximum amount of data the server should return for a fetch request This is not an absolute maximum, if the first message in the first non-empty partition of the fetch is larger than this value, the message will still be returned to ensure that the consumer can make progress. The maximum message size accepted by the broker is defined via message.max.bytes (broker config) or max.message.bytes (topic config). Note that the consu [...]
+| *camel.component.kafka.configuration.fetch-min-bytes* | The minimum amount of data the server should return for a fetch request. If insufficient data is available the request will wait for that much data to accumulate before answering the request. | 1 | Integer
+| *camel.component.kafka.configuration.fetch-wait-max-ms* | The maximum amount of time the server will block before answering the fetch request if there isn't sufficient data to immediately satisfy fetch.min.bytes | 500 | Integer
+| *camel.component.kafka.configuration.group-id* | A string that uniquely identifies the group of consumer processes to which this consumer belongs. By setting the same group id multiple processes indicate that they are all part of the same consumer group. This option is required for consumers. |  | String
+| *camel.component.kafka.configuration.header-filter-strategy* | To use a custom HeaderFilterStrategy to filter header to and from Camel message. |  | HeaderFilterStrategy
+| *camel.component.kafka.configuration.heartbeat-interval-ms* | The expected time between heartbeats to the consumer coordinator when using Kafka's group management facilities. Heartbeats are used to ensure that the consumer's session stays active and to facilitate rebalancing when new consumers join or leave the group. The value must be set lower than session.timeout.ms, but typically should be set no higher than 1/3 of that value. It can be adjusted even lower to control the expected t [...]
+| *camel.component.kafka.configuration.interceptor-classes* | Sets interceptors for producer or consumers. Producer interceptors have to be classes implementing org.apache.kafka.clients.producer.ProducerInterceptor Consumer interceptors have to be classes implementing org.apache.kafka.clients.consumer.ConsumerInterceptor Note that if you use Producer interceptor on a consumer it will throw a class cast exception in runtime |  | String
+| *camel.component.kafka.configuration.kafka-header-deserializer* | To use a custom KafkaHeaderDeserializer to deserialize kafka headers values |  | KafkaHeaderDeserializer
+| *camel.component.kafka.configuration.kafka-header-serializer* | To use a custom KafkaHeaderSerializer to serialize kafka headers values |  | KafkaHeaderSerializer
+| *camel.component.kafka.configuration.kerberos-before-relogin-min-time* | Login thread sleep time between refresh attempts. | 60000 | Integer
+| *camel.component.kafka.configuration.kerberos-init-cmd* | Kerberos kinit command path. Default is /usr/bin/kinit | /usr/bin/kinit | String
+| *camel.component.kafka.configuration.kerberos-principal-to-local-rules* | A list of rules for mapping from principal names to short names (typically operating system usernames). The rules are evaluated in order and the first rule that matches a principal name is used to map it to a short name. Any later rules in the list are ignored. By default, principal names of the form \{username\}/\{hostname\}\{REALM\} are mapped to \{username\}. For more details on the format please see the secur [...]
+| *camel.component.kafka.configuration.kerberos-renew-jitter* | Percentage of random jitter added to the renewal time. | 0.05 | Double
+| *camel.component.kafka.configuration.kerberos-renew-window-factor* | Login thread will sleep until the specified window factor of time from last refresh to ticket's expiry has been reached, at which time it will try to renew the ticket. | 0.8 | Double
+| *camel.component.kafka.configuration.key* | The record key (or null if no key is specified). If this option has been configured then it take precedence over header KafkaConstants#KEY |  | String
+| *camel.component.kafka.configuration.key-deserializer* | Deserializer class for key that implements the Deserializer interface. | org.apache.kafka.common.serialization.StringDeserializer | String
+| *camel.component.kafka.configuration.key-serializer-class* | The serializer class for keys (defaults to the same as for messages if nothing is given). | org.apache.kafka.common.serialization.StringSerializer | String
+| *camel.component.kafka.configuration.linger-ms* | The producer groups together any records that arrive in between request transmissions into a single batched request. Normally this occurs only under load when records arrive faster than they can be sent out. However in some circumstances the client may want to reduce the number of requests even under moderate load. This setting accomplishes this by adding a small amount of artificial delaythat is, rather than immediately sending out a r [...]
+| *camel.component.kafka.configuration.max-block-ms* | The configuration controls how long sending to kafka will block. These methods can be blocked for multiple reasons. For e.g: buffer full, metadata unavailable.This configuration imposes maximum limit on the total time spent in fetching metadata, serialization of key and value, partitioning and allocation of buffer memory when doing a send(). In case of partitionsFor(), this configuration imposes a maximum time threshold on waiting fo [...]
+| *camel.component.kafka.configuration.max-in-flight-request* | The maximum number of unacknowledged requests the client will send on a single connection before blocking. Note that if this setting is set to be greater than 1 and there are failed sends, there is a risk of message re-ordering due to retries (i.e., if retries are enabled). | 5 | Integer
+| *camel.component.kafka.configuration.max-partition-fetch-bytes* | The maximum amount of data per-partition the server will return. The maximum total memory used for a request will be #partitions max.partition.fetch.bytes. This size must be at least as large as the maximum message size the server allows or else it is possible for the producer to send messages larger than the consumer can fetch. If that happens, the consumer can get stuck trying to fetch a large message on a certain part [...]
+| *camel.component.kafka.configuration.max-poll-interval-ms* | The maximum delay between invocations of poll() when using consumer group management. This places an upper bound on the amount of time that the consumer can be idle before fetching more records. If poll() is not called before expiration of this timeout, then the consumer is considered failed and the group will rebalance in order to reassign the partitions to another member. |  | Long
+| *camel.component.kafka.configuration.max-poll-records* | The maximum number of records returned in a single call to poll() | 500 | Integer
+| *camel.component.kafka.configuration.max-request-size* | The maximum size of a request. This is also effectively a cap on the maximum record size. Note that the server has its own cap on record size which may be different from this. This setting will limit the number of record batches the producer will send in a single request to avoid sending huge requests. | 1048576 | Integer
+| *camel.component.kafka.configuration.metadata-max-age-ms* | The period of time in milliseconds after which we force a refresh of metadata even if we haven't seen any partition leadership changes to proactively discover any new brokers or partitions. | 300000 | Integer
+| *camel.component.kafka.configuration.metric-reporters* | A list of classes to use as metrics reporters. Implementing the MetricReporter interface allows plugging in classes that will be notified of new metric creation. The JmxReporter is always included to register JMX statistics. |  | String
+| *camel.component.kafka.configuration.metrics-sample-window-ms* | The number of samples maintained to compute metrics. | 30000 | Integer
+| *camel.component.kafka.configuration.no-of-metrics-sample* | The number of samples maintained to compute metrics. | 2 | Integer
+| *camel.component.kafka.configuration.offset-repository* | The offset repository to use in order to locally store the offset of each partition of the topic. Defining one will disable the autocommit. |  | StateRepository
+| *camel.component.kafka.configuration.partition-assignor* | The class name of the partition assignment strategy that the client will use to distribute partition ownership amongst consumer instances when group management is used | org.apache.kafka.clients.consumer.RangeAssignor | String
+| *camel.component.kafka.configuration.partition-key* | The partition to which the record will be sent (or null if no partition was specified). If this option has been configured then it take precedence over header KafkaConstants#PARTITION_KEY |  | Integer
+| *camel.component.kafka.configuration.partitioner* | The partitioner class for partitioning messages amongst sub-topics. The default partitioner is based on the hash of the key. | org.apache.kafka.clients.producer.internals.DefaultPartitioner | String
+| *camel.component.kafka.configuration.poll-timeout-ms* | The timeout used when polling the KafkaConsumer. | 5000 | Long
+| *camel.component.kafka.configuration.producer-batch-size* | The producer will attempt to batch records together into fewer requests whenever multiple records are being sent to the same partition. This helps performance on both the client and the server. This configuration controls the default batch size in bytes. No attempt will be made to batch records larger than this size.Requests sent to brokers will contain multiple batches, one for each partition with data available to be sent.A  [...]
+| *camel.component.kafka.configuration.queue-buffering-max-messages* | The maximum number of unsent messages that can be queued up the producer when using async mode before either the producer must be blocked or data must be dropped. | 10000 | Integer
+| *camel.component.kafka.configuration.receive-buffer-bytes* | The size of the TCP receive buffer (SO_RCVBUF) to use when reading data. | 65536 | Integer
+| *camel.component.kafka.configuration.reconnect-backoff-max-ms* | The maximum amount of time in milliseconds to wait when reconnecting to a broker that has repeatedly failed to connect. If provided, the backoff per host will increase exponentially for each consecutive connection failure, up to this maximum. After calculating the backoff increase, 20% random jitter is added to avoid connection storms. | 1000 | Integer
+| *camel.component.kafka.configuration.reconnect-backoff-ms* | The amount of time to wait before attempting to reconnect to a given host. This avoids repeatedly connecting to a host in a tight loop. This backoff applies to all requests sent by the consumer to the broker. | 50 | Integer
+| *camel.component.kafka.configuration.record-metadata* | Whether the producer should store the RecordMetadata results from sending to Kafka. The results are stored in a List containing the RecordMetadata metadata's. The list is stored on a header with the key KafkaConstants#KAFKA_RECORDMETA | true | Boolean
+| *camel.component.kafka.configuration.request-required-acks* | The number of acknowledgments the producer requires the leader to have received before considering a request complete. This controls the durability of records that are sent. The following settings are common: acks=0 If set to zero then the producer will not wait for any acknowledgment from the server at all. The record will be immediately added to the socket buffer and considered sent. No guarantee can be made that the serve [...]
+| *camel.component.kafka.configuration.request-timeout-ms* | The amount of time the broker will wait trying to meet the request.required.acks requirement before sending back an error to the client. | 305000 | Integer
+| *camel.component.kafka.configuration.retries* | Setting a value greater than zero will cause the client to resend any record whose send fails with a potentially transient error. Note that this retry is no different than if the client resent the record upon receiving the error. Allowing retries will potentially change the ordering of records because if two records are sent to a single partition, and the first fails and is retried but the second succeeds, then the second record may appea [...]
+| *camel.component.kafka.configuration.retry-backoff-ms* | Before each retry, the producer refreshes the metadata of relevant topics to see if a new leader has been elected. Since leader election takes a bit of time, this property specifies the amount of time that the producer waits before refreshing the metadata. | 100 | Integer
+| *camel.component.kafka.configuration.sasl-jaas-config* | Expose the kafka sasl.jaas.config parameter Example: org.apache.kafka.common.security.plain.PlainLoginModule required username=USERNAME password=PASSWORD; |  | String
+| *camel.component.kafka.configuration.sasl-kerberos-service-name* | The Kerberos principal name that Kafka runs as. This can be defined either in Kafka's JAAS config or in Kafka's config. |  | String
+| *camel.component.kafka.configuration.sasl-mechanism* | The Simple Authentication and Security Layer (SASL) Mechanism used. For the valid values see a href= \http://www.iana.org/assignments/sasl-mechanisms/sasl-mechanisms.xhtml\http://www.iana.org/assignments/sasl-mechanisms/sasl-mechanisms.xhtml | GSSAPI | String
+| *camel.component.kafka.configuration.schema-registry-u-r-l* | URL of the Confluent Platform schema registry servers to use. The format is host1:port1,host2:port2. This is known as schema.registry.url in the Confluent Platform documentation. This option is only available in the Confluent Platform (not standard Apache Kafka) |  | String
+| *camel.component.kafka.configuration.security-protocol* | Protocol used to communicate with brokers. SASL_PLAINTEXT, PLAINTEXT and SSL are supported | PLAINTEXT | String
+| *camel.component.kafka.configuration.seek-to* | Set if KafkaConsumer will read from beginning or end on startup: beginning : read from beginning end : read from end This is replacing the earlier property seekToBeginning |  | String
+| *camel.component.kafka.configuration.send-buffer-bytes* | Socket write buffer size | 131072 | Integer
+| *camel.component.kafka.configuration.serializer-class* | The serializer class for messages. | org.apache.kafka.common.serialization.StringSerializer | String
+| *camel.component.kafka.configuration.session-timeout-ms* | The timeout used to detect failures when using Kafka's group management facilities. | 10000 | Integer
+| *camel.component.kafka.configuration.specific-avro-reader* | This enables the use of a specific Avro reader for use with the Confluent Platform schema registry and the io.confluent.kafka.serializers.KafkaAvroDeserializer. This option is only available in the Confluent Platform (not standard Apache Kafka) | false | Boolean
+| *camel.component.kafka.configuration.ssl-cipher-suites* | A list of cipher suites. This is a named combination of authentication, encryption, MAC and key exchange algorithm used to negotiate the security settings for a network connection using TLS or SSL network protocol.By default all the available cipher suites are supported. |  | String
+| *camel.component.kafka.configuration.ssl-context-parameters* | SSL configuration using a Camel SSLContextParameters object. If configured it's applied before the other SSL endpoint parameters. |  | SSLContextParameters
+| *camel.component.kafka.configuration.ssl-enabled-protocols* | The list of protocols enabled for SSL connections. TLSv1.2, TLSv1.1 and TLSv1 are enabled by default. | TLSv1.2,TLSv1.1,TLSv1 | String
+| *camel.component.kafka.configuration.ssl-endpoint-algorithm* | The endpoint identification algorithm to validate server hostname using server certificate. |  | String
+| *camel.component.kafka.configuration.ssl-key-password* | The password of the private key in the key store file. This is optional for client. |  | String
+| *camel.component.kafka.configuration.ssl-keymanager-algorithm* | The algorithm used by key manager factory for SSL connections. Default value is the key manager factory algorithm configured for the Java Virtual Machine. | SunX509 | String
+| *camel.component.kafka.configuration.ssl-keystore-location* | The location of the key store file. This is optional for client and can be used for two-way authentication for client. |  | String
+| *camel.component.kafka.configuration.ssl-keystore-password* | The store password for the key store file.This is optional for client and only needed if ssl.keystore.location is configured. |  | String
+| *camel.component.kafka.configuration.ssl-keystore-type* | The file format of the key store file. This is optional for client. Default value is JKS | JKS | String
+| *camel.component.kafka.configuration.ssl-protocol* | The SSL protocol used to generate the SSLContext. Default setting is TLS, which is fine for most cases. Allowed values in recent JVMs are TLS, TLSv1.1 and TLSv1.2. SSL, SSLv2 and SSLv3 may be supported in older JVMs, but their usage is discouraged due to known security vulnerabilities. | TLS | String
+| *camel.component.kafka.configuration.ssl-provider* | The name of the security provider used for SSL connections. Default value is the default security provider of the JVM. |  | String
+| *camel.component.kafka.configuration.ssl-trustmanager-algorithm* | The algorithm used by trust manager factory for SSL connections. Default value is the trust manager factory algorithm configured for the Java Virtual Machine. | PKIX | String
+| *camel.component.kafka.configuration.ssl-truststore-location* | The location of the trust store file. |  | String
+| *camel.component.kafka.configuration.ssl-truststore-password* | The password for the trust store file. |  | String
+| *camel.component.kafka.configuration.ssl-truststore-type* | The file format of the trust store file. Default value is JKS. | JKS | String
+| *camel.component.kafka.configuration.topic* | Name of the topic to use. On the consumer you can use comma to separate multiple topics. A producer can only send a message to a single topic. |  | String
+| *camel.component.kafka.configuration.topic-is-pattern* | Whether the topic is a pattern (regular expression). This can be used to subscribe to dynamic number of topics matching the pattern. | false | Boolean
+| *camel.component.kafka.configuration.value-deserializer* | Deserializer class for value that implements the Deserializer interface. | org.apache.kafka.common.serialization.StringDeserializer | String
+| *camel.component.kafka.configuration.worker-pool* | To use a custom worker pool for continue routing Exchange after kafka server has acknowledge the message that was sent to it from KafkaProducer using asynchronous non-blocking processing. |  | ExecutorService
+| *camel.component.kafka.configuration.worker-pool-core-size* | Number of core threads for the worker pool for continue routing Exchange after kafka server has acknowledge the message that was sent to it from KafkaProducer using asynchronous non-blocking processing. | 10 | Integer
+| *camel.component.kafka.configuration.worker-pool-max-size* | Maximum number of threads for the worker pool for continue routing Exchange after kafka server has acknowledge the message that was sent to it from KafkaProducer using asynchronous non-blocking processing. | 20 | Integer
+| *camel.component.kafka.enabled* | Whether to enable auto configuration of the kafka component. This is enabled by default. |  | Boolean
+| *camel.component.kafka.kafka-manual-commit-factory* | Factory to use for creating KafkaManualCommit instances. This allows to plugin a custom factory to create custom KafkaManualCommit instances in case special logic is needed when doing manual commits that deviates from the default implementation that comes out of the box. The option is a org.apache.camel.component.kafka.KafkaManualCommitFactory type. |  | String
+| *camel.component.kafka.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+| *camel.component.kafka.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+| *camel.component.kafka.worker-pool* | To use a shared custom worker pool for continue routing Exchange after kafka server has acknowledge the message that was sent to it from KafkaProducer using asynchronous non-blocking processing. If using this option then you must handle the lifecycle of the thread pool to shut the pool down when no longer needed. The option is a java.util.concurrent.ExecutorService type. |  | String
+|===
+
diff --git a/components-starter/camel-kubernetes-starter/src/main/docs/kubernetes-starter.adoc b/components-starter/camel-kubernetes-starter/src/main/docs/kubernetes-starter.adoc
new file mode 100644
index 0000000..3efc432
--- /dev/null
+++ b/components-starter/camel-kubernetes-starter/src/main/docs/kubernetes-starter.adoc
@@ -0,0 +1,94 @@
+== kubernetes - Spring Boot Auto-Configuration
+
+When using kubernetes with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-kubernetes-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 70 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.kubernetes-config-maps.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-config-maps.enabled* | Whether to enable auto configuration of the kubernetes-config-maps component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-config-maps.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message  [...]
+| *camel.component.kubernetes-deployments.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-deployments.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.kubernetes-deployments.enabled* | Whether to enable auto configuration of the kubernetes-deployments component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-deployments.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message  [...]
+| *camel.component.kubernetes-hpa.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-hpa.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.kubernetes-hpa.enabled* | Whether to enable auto configuration of the kubernetes-hpa component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-hpa.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.kubernetes-job.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-job.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.kubernetes-job.enabled* | Whether to enable auto configuration of the kubernetes-job component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-job.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.kubernetes-namespaces.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-namespaces.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.kubernetes-namespaces.enabled* | Whether to enable auto configuration of the kubernetes-namespaces component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-namespaces.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message i [...]
+| *camel.component.kubernetes-nodes.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-nodes.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.kubernetes-nodes.enabled* | Whether to enable auto configuration of the kubernetes-nodes component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-nodes.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is pro [...]
+| *camel.component.kubernetes-persistent-volumes-claims.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-persistent-volumes-claims.enabled* | Whether to enable auto configuration of the kubernetes-persistent-volumes-claims component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-persistent-volumes-claims.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the  [...]
+| *camel.component.kubernetes-persistent-volumes.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-persistent-volumes.enabled* | Whether to enable auto configuration of the kubernetes-persistent-volumes component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-persistent-volumes.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first m [...]
+| *camel.component.kubernetes-pods.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-pods.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.kubernetes-pods.enabled* | Whether to enable auto configuration of the kubernetes-pods component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-pods.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+| *camel.component.kubernetes-replication-controllers.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-replication-controllers.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | fal [...]
+| *camel.component.kubernetes-replication-controllers.enabled* | Whether to enable auto configuration of the kubernetes-replication-controllers component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-replication-controllers.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the fi [...]
+| *camel.component.kubernetes-resources-quota.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-resources-quota.enabled* | Whether to enable auto configuration of the kubernetes-resources-quota component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-resources-quota.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first mess [...]
+| *camel.component.kubernetes-secrets.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-secrets.enabled* | Whether to enable auto configuration of the kubernetes-secrets component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-secrets.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is p [...]
+| *camel.component.kubernetes-service-accounts.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-service-accounts.enabled* | Whether to enable auto configuration of the kubernetes-service-accounts component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-service-accounts.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first mes [...]
+| *camel.component.kubernetes-services.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kubernetes-services.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.kubernetes-services.enabled* | Whether to enable auto configuration of the kubernetes-services component. This is enabled by default. |  | Boolean
+| *camel.component.kubernetes-services.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is  [...]
+| *camel.component.kubernetes.cluster.service.attributes* | Custom service attributes. |  | Map
+| *camel.component.kubernetes.cluster.service.cluster-labels* | Set the labels used to identify the pods composing the cluster. |  | Map
+| *camel.component.kubernetes.cluster.service.config-map-name* | Set the name of the ConfigMap used to do optimistic locking (defaults to 'leaders'). |  | String
+| *camel.component.kubernetes.cluster.service.connection-timeout-millis* | Connection timeout in milliseconds to use when making requests to the Kubernetes API server. |  | Integer
+| *camel.component.kubernetes.cluster.service.enabled* | Sets if the Kubernetes cluster service should be enabled or not, default is false. | false | Boolean
+| *camel.component.kubernetes.cluster.service.id* | Cluster Service ID |  | String
+| *camel.component.kubernetes.cluster.service.jitter-factor* | A jitter factor to apply in order to prevent all pods to call Kubernetes APIs in the same instant. |  | Double
+| *camel.component.kubernetes.cluster.service.kubernetes-namespace* | Set the name of the Kubernetes namespace containing the pods and the configmap (autodetected by default) |  | String
+| *camel.component.kubernetes.cluster.service.lease-duration-millis* | The default duration of the lease for the current leader. |  | Long
+| *camel.component.kubernetes.cluster.service.master-url* | Set the URL of the Kubernetes master (read from Kubernetes client properties by default). |  | String
+| *camel.component.kubernetes.cluster.service.order* | Service lookup order/priority. |  | Integer
+| *camel.component.kubernetes.cluster.service.pod-name* | Set the name of the current pod (autodetected from container host name by default). |  | String
+| *camel.component.kubernetes.cluster.service.renew-deadline-millis* | The deadline after which the leader must stop its services because it may have lost the leadership. |  | Long
+| *camel.component.kubernetes.cluster.service.retry-period-millis* | The time between two subsequent attempts to check and acquire the leadership. It is randomized using the jitter factor. |  | Long
+| *camel.component.openshift-build-configs.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.openshift-build-configs.enabled* | Whether to enable auto configuration of the openshift-build-configs component. This is enabled by default. |  | Boolean
+| *camel.component.openshift-build-configs.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message [...]
+| *camel.component.openshift-builds.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.openshift-builds.enabled* | Whether to enable auto configuration of the openshift-builds component. This is enabled by default. |  | Boolean
+| *camel.component.openshift-builds.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is pro [...]
+|===
+
diff --git a/components-starter/camel-kudu-starter/src/main/docs/kudu-starter.adoc b/components-starter/camel-kudu-starter/src/main/docs/kudu-starter.adoc
new file mode 100644
index 0000000..b7c7966
--- /dev/null
+++ b/components-starter/camel-kudu-starter/src/main/docs/kudu-starter.adoc
@@ -0,0 +1,27 @@
+== kudu - Spring Boot Auto-Configuration
+
+When using kudu with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-kudu-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.kudu.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.kudu.enabled* | Whether to enable auto configuration of the kudu component. This is enabled by default. |  | Boolean
+| *camel.component.kudu.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-language-starter/src/main/docs/language-starter.adoc b/components-starter/camel-language-starter/src/main/docs/language-starter.adoc
new file mode 100644
index 0000000..6a69e3e
--- /dev/null
+++ b/components-starter/camel-language-starter/src/main/docs/language-starter.adoc
@@ -0,0 +1,27 @@
+== language - Spring Boot Auto-Configuration
+
+When using language with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-language-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.language.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.language.enabled* | Whether to enable auto configuration of the language component. This is enabled by default. |  | Boolean
+| *camel.component.language.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+|===
+
diff --git a/components-starter/camel-ldap-starter/src/main/docs/ldap-starter.adoc b/components-starter/camel-ldap-starter/src/main/docs/ldap-starter.adoc
new file mode 100644
index 0000000..bf2debb
--- /dev/null
+++ b/components-starter/camel-ldap-starter/src/main/docs/ldap-starter.adoc
@@ -0,0 +1,27 @@
+== ldap - Spring Boot Auto-Configuration
+
+When using ldap with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ldap-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ldap.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ldap.enabled* | Whether to enable auto configuration of the ldap component. This is enabled by default. |  | Boolean
+| *camel.component.ldap.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-ldif-starter/src/main/docs/ldif-starter.adoc b/components-starter/camel-ldif-starter/src/main/docs/ldif-starter.adoc
new file mode 100644
index 0000000..58b30fc
--- /dev/null
+++ b/components-starter/camel-ldif-starter/src/main/docs/ldif-starter.adoc
@@ -0,0 +1,27 @@
+== ldif - Spring Boot Auto-Configuration
+
+When using ldif with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ldif-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.ldif.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.ldif.enabled* | Whether to enable auto configuration of the ldif component. This is enabled by default. |  | Boolean
+| *camel.component.ldif.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-log-starter/src/main/docs/log-starter.adoc b/components-starter/camel-log-starter/src/main/docs/log-starter.adoc
new file mode 100644
index 0000000..50d6d0b
--- /dev/null
+++ b/components-starter/camel-log-starter/src/main/docs/log-starter.adoc
@@ -0,0 +1,28 @@
+== log - Spring Boot Auto-Configuration
+
+When using log with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-log-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.log.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.log.enabled* | Whether to enable auto configuration of the log component. This is enabled by default. |  | Boolean
+| *camel.component.log.exchange-formatter* | Sets a custom ExchangeFormatter to convert the Exchange to a String suitable for logging. If not specified, we default to DefaultExchangeFormatter. The option is a org.apache.camel.spi.ExchangeFormatter type. |  | String
+| *camel.component.log.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-lra-starter/src/main/docs/lra-starter.adoc b/components-starter/camel-lra-starter/src/main/docs/lra-starter.adoc
new file mode 100644
index 0000000..115a933
--- /dev/null
+++ b/components-starter/camel-lra-starter/src/main/docs/lra-starter.adoc
@@ -0,0 +1,29 @@
+== lra - Spring Boot Auto-Configuration
+
+When using lra with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-lra-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.service.lra.coordinator-context-path* | The context path of the LRA coordinator service |  | String
+| *camel.service.lra.coordinator-url* | The base URL of the LRA coordinator service (e.g. \http://lra-host:8080) |  | String
+| *camel.service.lra.enabled* | Global option to enable/disable component auto-configuration, default is true. | true | Boolean
+| *camel.service.lra.local-participant-context-path* | The context path of the local participant callback services |  | String
+| *camel.service.lra.local-participant-url* | The local URL where the coordinator should send callbacks to (e.g. \http://my-host-name:8080) |  | String
+|===
+
diff --git a/components-starter/camel-lucene-starter/src/main/docs/lucene-starter.adoc b/components-starter/camel-lucene-starter/src/main/docs/lucene-starter.adoc
new file mode 100644
index 0000000..6287439
--- /dev/null
+++ b/components-starter/camel-lucene-starter/src/main/docs/lucene-starter.adoc
@@ -0,0 +1,36 @@
+== lucene - Spring Boot Auto-Configuration
+
+When using lucene with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-lucene-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 12 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.lucene.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.lucene.config.analyzer* | An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box |  | Analyzer
+| *camel.component.lucene.config.authority* |  |  | String
+| *camel.component.lucene.config.host* | The URL to the lucene server |  | String
+| *camel.component.lucene.config.index-dir* | A file system directory in which index files are created upon analysis of the document by the specified analyzer |  | File
+| *camel.component.lucene.config.lucene-version* |  |  | Version
+| *camel.component.lucene.config.max-hits* | An integer value that limits the result set of the search operation |  | Integer
+| *camel.component.lucene.config.operation* | Operation to do such as insert or query. |  | LuceneOperation
+| *camel.component.lucene.config.src-dir* | An optional directory containing files to be used to be analyzed and added to the index at producer startup. |  | File
+| *camel.component.lucene.config.uri* |  |  | URI
+| *camel.component.lucene.enabled* | Whether to enable auto configuration of the lucene component. This is enabled by default. |  | Boolean
+| *camel.component.lucene.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-lumberjack-starter/src/main/docs/lumberjack-starter.adoc b/components-starter/camel-lumberjack-starter/src/main/docs/lumberjack-starter.adoc
new file mode 100644
index 0000000..6508081
--- /dev/null
+++ b/components-starter/camel-lumberjack-starter/src/main/docs/lumberjack-starter.adoc
@@ -0,0 +1,29 @@
+== lumberjack - Spring Boot Auto-Configuration
+
+When using lumberjack with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-lumberjack-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.lumberjack.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.lumberjack.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.lumberjack.enabled* | Whether to enable auto configuration of the lumberjack component. This is enabled by default. |  | Boolean
+| *camel.component.lumberjack.ssl-context-parameters* | Sets the default SSL configuration to use for all the endpoints. You can also configure it directly at the endpoint level. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.lumberjack.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-lzf-starter/src/main/docs/lzf-starter.adoc b/components-starter/camel-lzf-starter/src/main/docs/lzf-starter.adoc
new file mode 100644
index 0000000..be17bec
--- /dev/null
+++ b/components-starter/camel-lzf-starter/src/main/docs/lzf-starter.adoc
@@ -0,0 +1,27 @@
+== lzf - Spring Boot Auto-Configuration
+
+When using lzf with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-lzf-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.lzf.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.lzf.enabled* | Whether to enable auto configuration of the lzf data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.lzf.using-parallel-compression* | Enable encoding (compress) using multiple processing cores. | false | Boolean
+|===
+
diff --git a/components-starter/camel-mail-starter/src/main/docs/mail-starter.adoc b/components-starter/camel-mail-starter/src/main/docs/mail-starter.adoc
new file mode 100644
index 0000000..a62265f
--- /dev/null
+++ b/components-starter/camel-mail-starter/src/main/docs/mail-starter.adoc
@@ -0,0 +1,74 @@
+== mail - Spring Boot Auto-Configuration
+
+When using mail with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mail-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 50 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mail.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mail.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.mail.configuration.additional-java-mail-properties* | Sets additional java mail properties, that will append/override any default properties that is set based on all the other options. This is useful if you need to add some special options but want to keep the others as is. |  | Properties
+| *camel.component.mail.configuration.alternative-body-header* | Specifies the key to an IN message header that contains an alternative email body. For example, if you send emails in text/html format and want to provide an alternative mail body for non-HTML email clients, set the alternative mail body with this key as a header. | CamelMailAlternativeBody | String
+| *camel.component.mail.configuration.attachments-content-transfer-encoding-resolver* | To use a custom AttachmentsContentTransferEncodingResolver to resolve what content-type-encoding to use for attachments. |  | AttachmentsContentTransferEncodingResolver
+| *camel.component.mail.configuration.bcc* | Sets the BCC email address. Separate multiple email addresses with comma. |  | String
+| *camel.component.mail.configuration.cc* | Sets the CC email address. Separate multiple email addresses with comma. |  | String
+| *camel.component.mail.configuration.close-folder* | Whether the consumer should close the folder after polling. Setting this option to false and having disconnect=false as well, then the consumer keep the folder open between polls. | true | Boolean
+| *camel.component.mail.configuration.connection-timeout* | The connection timeout in milliseconds. | 30000 | Integer
+| *camel.component.mail.configuration.content-type* | The mail message content type. Use text/html for HTML mails. | text/plain | String
+| *camel.component.mail.configuration.copy-to* | After processing a mail message, it can be copied to a mail folder with the given name. You can override this configuration value, with a header with the key copyTo, allowing you to copy messages to folder names configured at runtime. |  | String
+| *camel.component.mail.configuration.debug-mode* | Enable debug mode on the underlying mail framework. The SUN Mail framework logs the debug messages to System.out by default. | false | Boolean
+| *camel.component.mail.configuration.delete* | Deletes the messages after they have been processed. This is done by setting the DELETED flag on the mail message. If false, the SEEN flag is set instead. As of Camel 2.10 you can override this configuration option by setting a header with the key delete to determine if the mail should be deleted or not. | false | Boolean
+| *camel.component.mail.configuration.disconnect* | Whether the consumer should disconnect after polling. If enabled this forces Camel to connect on each poll. | false | Boolean
+| *camel.component.mail.configuration.fetch-size* | Sets the maximum number of messages to consume during a poll. This can be used to avoid overloading a mail server, if a mailbox folder contains a lot of messages. Default value of -1 means no fetch size and all messages will be consumed. Setting the value to 0 is a special corner case, where Camel will not consume any messages at all. | -1 | Integer
+| *camel.component.mail.configuration.folder-name* | The folder to poll. | INBOX | String
+| *camel.component.mail.configuration.from* | The from email address | camel@localhost | String
+| *camel.component.mail.configuration.handle-failed-message* | If the mail consumer cannot retrieve a given mail message, then this option allows to handle the caused exception by the consumer's error handler. By enable the bridge error handler on the consumer, then the Camel routing error handler can handle the exception instead. The default behavior would be the consumer throws an exception and no mails from the batch would be able to be routed by Camel. | false | Boolean
+| *camel.component.mail.configuration.host* | The mail server host name |  | String
+| *camel.component.mail.configuration.ignore-unsupported-charset* | Option to let Camel ignore unsupported charset in the local JVM when sending mails. If the charset is unsupported then charset=XXX (where XXX represents the unsupported charset) is removed from the content-type and it relies on the platform default instead. | false | Boolean
+| *camel.component.mail.configuration.ignore-uri-scheme* | Option to let Camel ignore unsupported charset in the local JVM when sending mails. If the charset is unsupported then charset=XXX (where XXX represents the unsupported charset) is removed from the content-type and it relies on the platform default instead. | false | Boolean
+| *camel.component.mail.configuration.java-mail-properties* |  |  | Properties
+| *camel.component.mail.configuration.java-mail-sender* | To use a custom org.apache.camel.component.mail.JavaMailSender for sending emails. |  | JavaMailSender
+| *camel.component.mail.configuration.map-mail-message* | Specifies whether Camel should map the received mail message to Camel body/headers/attachments. If set to true, the body of the mail message is mapped to the body of the Camel IN message, the mail headers are mapped to IN headers, and the attachments to Camel IN attachment message. If this option is set to false then the IN message contains a raw javax.mail.Message. You can retrieve this raw message by calling exchange.getIn().get [...]
+| *camel.component.mail.configuration.mime-decode-headers* | This option enables transparent MIME decoding and unfolding for mail headers. | false | Boolean
+| *camel.component.mail.configuration.password* | The password for login |  | String
+| *camel.component.mail.configuration.peek* | Will mark the javax.mail.Message as peeked before processing the mail message. This applies to IMAPMessage messages types only. By using peek the mail will not be eager marked as SEEN on the mail server, which allows us to rollback the mail message if there is an error processing in Camel. | true | Boolean
+| *camel.component.mail.configuration.port* | The port number of the mail server |  | Integer
+| *camel.component.mail.configuration.protocol* |  |  | String
+| *camel.component.mail.configuration.reply-to* | The Reply-To recipients (the receivers of the response mail). Separate multiple email addresses with a comma. |  | String
+| *camel.component.mail.configuration.session* | Specifies the mail session that camel should use for all mail interactions. Useful in scenarios where mail sessions are created and managed by some other resource, such as a JavaEE container. When using a custom mail session, then the hostname and port from the mail session will be used (if configured on the session). |  | Session
+| *camel.component.mail.configuration.skip-failed-message* | If the mail consumer cannot retrieve a given mail message, then this option allows to skip the message and move on to retrieve the next mail message. The default behavior would be the consumer throws an exception and no mails from the batch would be able to be routed by Camel. | false | Boolean
+| *camel.component.mail.configuration.ssl-context-parameters* | To configure security using SSLContextParameters. |  | SSLContextParameters
+| *camel.component.mail.configuration.subject* | The Subject of the message being sent. Note: Setting the subject in the header takes precedence over this option. |  | String
+| *camel.component.mail.configuration.to* | Sets the To email address. Separate multiple email addresses with comma. |  | String
+| *camel.component.mail.configuration.unseen* | Whether to limit by unseen mails only. | true | Boolean
+| *camel.component.mail.configuration.use-inline-attachments* | Whether to use disposition inline or attachment. | false | Boolean
+| *camel.component.mail.configuration.username* | The username for login |  | String
+| *camel.component.mail.content-type-resolver* | Resolver to determine Content-Type for file attachments. The option is a org.apache.camel.component.mail.ContentTypeResolver type. |  | String
+| *camel.component.mail.enabled* | Whether to enable auto configuration of the mail component. This is enabled by default. |  | Boolean
+| *camel.component.mail.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.mail.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.mail.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+| *camel.dataformat.mime-multipart.binary-content* | Defines whether the content of binary parts in the MIME multipart is binary (true) or Base-64 encoded (false) Default is false. | false | Boolean
+| *camel.dataformat.mime-multipart.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.mime-multipart.enabled* | Whether to enable auto configuration of the mime-multipart data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.mime-multipart.headers-inline* | Defines whether the MIME-Multipart headers are part of the message body (true) or are set as Camel headers (false). Default is false. | false | Boolean
+| *camel.dataformat.mime-multipart.include-headers* | A regex that defines which Camel headers are also included as MIME headers into the MIME multipart. This will only work if headersInline is set to true. Default is to include no headers |  | String
+| *camel.dataformat.mime-multipart.multipart-sub-type* | Specify the subtype of the MIME Multipart. Default is mixed. | mixed | String
+| *camel.dataformat.mime-multipart.multipart-without-attachment* | Defines whether a message without attachment is also marshaled into a MIME Multipart (with only one body part). Default is false. | false | Boolean
+|===
+
diff --git a/components-starter/camel-master-starter/src/main/docs/master-starter.adoc b/components-starter/camel-master-starter/src/main/docs/master-starter.adoc
new file mode 100644
index 0000000..283ff22
--- /dev/null
+++ b/components-starter/camel-master-starter/src/main/docs/master-starter.adoc
@@ -0,0 +1,29 @@
+== master - Spring Boot Auto-Configuration
+
+When using master with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-master-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.master.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.master.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.master.enabled* | Whether to enable auto configuration of the master component. This is enabled by default. |  | Boolean
+| *camel.component.master.service* | Inject the service to use. The option is a org.apache.camel.cluster.CamelClusterService type. |  | String
+| *camel.component.master.service-selector* | Inject the service selector used to lookup the CamelClusterService to use. The option is a org.apache.camel.cluster.CamelClusterService.Selector type. |  | String
+|===
+
diff --git a/components-starter/camel-metrics-starter/src/main/docs/metrics-starter.adoc b/components-starter/camel-metrics-starter/src/main/docs/metrics-starter.adoc
new file mode 100644
index 0000000..39bd554
--- /dev/null
+++ b/components-starter/camel-metrics-starter/src/main/docs/metrics-starter.adoc
@@ -0,0 +1,28 @@
+== metrics - Spring Boot Auto-Configuration
+
+When using metrics with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-metrics-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.metrics.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.metrics.enabled* | Whether to enable auto configuration of the metrics component. This is enabled by default. |  | Boolean
+| *camel.component.metrics.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.metrics.metric-registry* | To use a custom configured MetricRegistry. The option is a com.codahale.metrics.MetricRegistry type. |  | String
+|===
+
diff --git a/components-starter/camel-micrometer-starter/src/main/docs/micrometer-starter.adoc b/components-starter/camel-micrometer-starter/src/main/docs/micrometer-starter.adoc
new file mode 100644
index 0000000..9feed98
--- /dev/null
+++ b/components-starter/camel-micrometer-starter/src/main/docs/micrometer-starter.adoc
@@ -0,0 +1,28 @@
+== micrometer - Spring Boot Auto-Configuration
+
+When using micrometer with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-micrometer-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.micrometer.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.micrometer.enabled* | Whether to enable auto configuration of the micrometer component. This is enabled by default. |  | Boolean
+| *camel.component.micrometer.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+| *camel.component.micrometer.metrics-registry* | To use a custom configured MetricRegistry. The option is a io.micrometer.core.instrument.MeterRegistry type. |  | String
+|===
+
diff --git a/components-starter/camel-milo-starter/src/main/docs/milo-starter.adoc b/components-starter/camel-milo-starter/src/main/docs/milo-starter.adoc
new file mode 100644
index 0000000..821e52d
--- /dev/null
+++ b/components-starter/camel-milo-starter/src/main/docs/milo-starter.adoc
@@ -0,0 +1,72 @@
+== milo - Spring Boot Auto-Configuration
+
+When using milo with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-milo-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 48 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.milo-client.application-name* | Default application name |  | String
+| *camel.component.milo-client.application-uri* | Default application URI |  | String
+| *camel.component.milo-client.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.milo-client.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.milo-client.default-configuration.allowed-security-policies* | A set of allowed security policy URIs. Default is to accept all and use the highest. |  | Set
+| *camel.component.milo-client.default-configuration.application-name* | The application name | Apache Camel adapter for Eclipse Milo | String
+| *camel.component.milo-client.default-configuration.application-uri* | The application URI | http://camel.apache.org/EclipseMilo/Client | String
+| *camel.component.milo-client.default-configuration.channel-lifetime* | Channel lifetime in milliseconds |  | Long
+| *camel.component.milo-client.default-configuration.client-id* | A virtual client id to force the creation of a new connection instance |  | String
+| *camel.component.milo-client.default-configuration.discovery-endpoint-suffix* | A suffix for endpoint URI when discovering |  | String
+| *camel.component.milo-client.default-configuration.discovery-endpoint-uri* | An alternative discovery URI |  | String
+| *camel.component.milo-client.default-configuration.key-alias* | The name of the key in the keystore file |  | String
+| *camel.component.milo-client.default-configuration.key-password* | The key password |  | String
+| *camel.component.milo-client.default-configuration.key-store-password* | The keystore password |  | String
+| *camel.component.milo-client.default-configuration.key-store-type* | The key store type |  | String
+| *camel.component.milo-client.default-configuration.key-store-url* | The URL where the key should be loaded from |  | String
+| *camel.component.milo-client.default-configuration.max-pending-publish-requests* | The maximum number of pending publish requests |  | Long
+| *camel.component.milo-client.default-configuration.max-response-message-size* | The maximum number of bytes a response message may have |  | Long
+| *camel.component.milo-client.default-configuration.override-host* | Override the server reported endpoint host with the host from the endpoint URI. | false | Boolean
+| *camel.component.milo-client.default-configuration.product-uri* | The product URI | http://camel.apache.org/EclipseMilo | String
+| *camel.component.milo-client.default-configuration.request-timeout* | Request timeout in milliseconds |  | Long
+| *camel.component.milo-client.default-configuration.session-name* | Session name |  | String
+| *camel.component.milo-client.default-configuration.session-timeout* | Session timeout in milliseconds |  | Long
+| *camel.component.milo-client.enabled* | Whether to enable auto configuration of the milo-client component. This is enabled by default. |  | Boolean
+| *camel.component.milo-client.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processe [...]
+| *camel.component.milo-client.product-uri* | Default product URI |  | String
+| *camel.component.milo-client.reconnect-timeout* | Default reconnect timeout |  | Long
+| *camel.component.milo-server.application-name* | The application name |  | String
+| *camel.component.milo-server.application-uri* | The application URI |  | String
+| *camel.component.milo-server.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.milo-server.bind-addresses* | Set the addresses of the local addresses the server should bind to |  | String
+| *camel.component.milo-server.bind-port* | The TCP port the server binds to |  | Integer
+| *camel.component.milo-server.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.milo-server.build-info* | Server build info. The option is a org.eclipse.milo.opcua.stack.core.types.structured.BuildInfo type. |  | String
+| *camel.component.milo-server.certificate-manager* | Server certificate manager. The option is a org.eclipse.milo.opcua.stack.core.security.CertificateManager type. |  | String
+| *camel.component.milo-server.certificate-validator* | Validator for client certificates. The option is a java.util.function.Supplier<org.eclipse.milo.opcua.stack.core.security.CertificateValidator> type. |  | String
+| *camel.component.milo-server.default-certificate-validator* | Validator for client certificates using default file based approach |  | File
+| *camel.component.milo-server.enable-anonymous-authentication* | Enable anonymous authentication, disabled by default | false | Boolean
+| *camel.component.milo-server.enabled* | Whether to enable auto configuration of the milo-server component. This is enabled by default. |  | Boolean
+| *camel.component.milo-server.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processe [...]
+| *camel.component.milo-server.namespace-uri* | The URI of the namespace, defaults to urn:org:apache:camel |  | String
+| *camel.component.milo-server.path* | The path to be appended to the end of the endpoint url. (doesn't need to start with '/') |  | String
+| *camel.component.milo-server.product-uri* | The product URI |  | String
+| *camel.component.milo-server.security-policies* | Security policies |  | Set
+| *camel.component.milo-server.security-policies-by-id* | Security policies by URI or name |  | Collection
+| *camel.component.milo-server.server-certificate* | Server certificate. The option is a org.apache.camel.component.milo.KeyStoreLoader.Result type. |  | String
+| *camel.component.milo-server.user-authentication-credentials* | Set user password combinations in the form of user1:pwd1,user2:pwd2 Usernames and passwords will be URL decoded |  | String
+| *camel.component.milo-server.username-security-policy-uri* | Set the UserTokenPolicy used when |  | SecurityPolicy
+|===
+
diff --git a/components-starter/camel-mina-starter/src/main/docs/mina-starter.adoc b/components-starter/camel-mina-starter/src/main/docs/mina-starter.adoc
new file mode 100644
index 0000000..8cd00de
--- /dev/null
+++ b/components-starter/camel-mina-starter/src/main/docs/mina-starter.adoc
@@ -0,0 +1,55 @@
+== mina - Spring Boot Auto-Configuration
+
+When using mina with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mina-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 31 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mina.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mina.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.mina.configuration.allow-default-codec* | The mina component installs a default codec if both, codec is null and textline is false. Setting allowDefaultCodec to false prevents the mina component from installing a default codec as the first element in the filter chain. This is useful in scenarios where another filter must be the first in the filter chain, like the SSL filter. | true | Boolean
+| *camel.component.mina.configuration.auto-start-tls* | Whether to auto start SSL handshake. | true | Boolean
+| *camel.component.mina.configuration.cached-address* | Whether to create the InetAddress once and reuse. Setting this to false allows to pickup DNS changes in the network. | true | Boolean
+| *camel.component.mina.configuration.client-mode* | If the clientMode is true, mina consumer will connect the address as a TCP client. | false | Boolean
+| *camel.component.mina.configuration.codec* | To use a custom minda codec implementation. |  | ProtocolCodecFactory
+| *camel.component.mina.configuration.decoder-max-line-length* | To set the textline protocol decoder max line length. By default the default value of Mina itself is used which are 1024. | 1024 | Integer
+| *camel.component.mina.configuration.disconnect* | Whether or not to disconnect(close) from Mina session right after use. Can be used for both consumer and producer. | false | Boolean
+| *camel.component.mina.configuration.disconnect-on-no-reply* | If sync is enabled then this option dictates MinaConsumer if it should disconnect where there is no reply to send back. | true | Boolean
+| *camel.component.mina.configuration.encoder-max-line-length* | To set the textline protocol encoder max line length. By default the default value of Mina itself is used which are Integer.MAX_VALUE. | -1 | Integer
+| *camel.component.mina.configuration.encoding* | You can configure the encoding (a charset name) to use for the TCP textline codec and the UDP protocol. If not provided, Camel will use the JVM default Charset |  | String
+| *camel.component.mina.configuration.filters* | You can set a list of Mina IoFilters to use. |  | List
+| *camel.component.mina.configuration.host* | Hostname to use. Use localhost or 0.0.0.0 for local server as consumer. For producer use the hostname or ip address of the remote server. |  | String
+| *camel.component.mina.configuration.lazy-session-creation* | Sessions can be lazily created to avoid exceptions, if the remote server is not up and running when the Camel producer is started. | true | Boolean
+| *camel.component.mina.configuration.maximum-pool-size* | Number of worker threads in the worker pool for TCP and UDP | 16 | Integer
+| *camel.component.mina.configuration.mina-logger* | You can enable the Apache MINA logging filter. Apache MINA uses slf4j logging at INFO level to log all input and output. | false | Boolean
+| *camel.component.mina.configuration.no-reply-log-level* | If sync is enabled this option dictates MinaConsumer which logging level to use when logging a there is no reply to send back. |  | LoggingLevel
+| *camel.component.mina.configuration.ordered-thread-pool-executor* | Whether to use ordered thread pool, to ensure events are processed orderly on the same channel. | true | Boolean
+| *camel.component.mina.configuration.port* | Port number |  | Integer
+| *camel.component.mina.configuration.protocol* | Protocol to use |  | String
+| *camel.component.mina.configuration.ssl-context-parameters* | To configure SSL security. |  | SSLContextParameters
+| *camel.component.mina.configuration.sync* | Setting to set endpoint as one-way or request-response. | true | Boolean
+| *camel.component.mina.configuration.textline* | Only used for TCP. If no codec is specified, you can use this flag to indicate a text line based codec; if not specified or the value is false, then Object Serialization is assumed over TCP. | false | Boolean
+| *camel.component.mina.configuration.textline-delimiter* | Only used for TCP and if textline=true. Sets the text line delimiter to use. If none provided, Camel will use DEFAULT. This delimiter is used to mark the end of text. |  | MinaTextLineDelimiter
+| *camel.component.mina.configuration.timeout* | You can configure the timeout that specifies how long to wait for a response from a remote server. The timeout unit is in milliseconds, so 60000 is 60 seconds. | 30000 | Long
+| *camel.component.mina.configuration.transfer-exchange* | Only used for TCP. You can transfer the exchange over the wire instead of just the body. The following fields are transferred: In body, Out body, fault body, In headers, Out headers, fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. | false | Boolean
+| *camel.component.mina.configuration.write-timeout* | Maximum amount of time it should take to send data to the MINA session. Default is 10000 milliseconds. | 10000 | Long
+| *camel.component.mina.enabled* | Whether to enable auto configuration of the mina component. This is enabled by default. |  | Boolean
+| *camel.component.mina.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.mina.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-mllp-starter/src/main/docs/mllp-starter.adoc b/components-starter/camel-mllp-starter/src/main/docs/mllp-starter.adoc
new file mode 100644
index 0000000..c61faa8
--- /dev/null
+++ b/components-starter/camel-mllp-starter/src/main/docs/mllp-starter.adoc
@@ -0,0 +1,57 @@
+== mllp - Spring Boot Auto-Configuration
+
+When using mllp with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mllp-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 33 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mllp.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mllp.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.mllp.configuration.accept-timeout* | Timeout (in milliseconds) while waiting for a TCP connection TCP Server Only | 60000 | Integer
+| *camel.component.mllp.configuration.auto-ack* | Enable/Disable the automatic generation of a MLLP Acknowledgement MLLP Consumers only | true | Boolean
+| *camel.component.mllp.configuration.backlog* | The maximum queue length for incoming connection indications (a request to connect) is set to the backlog parameter. If a connection indication arrives when the queue is full, the connection is refused. | 5 | Integer
+| *camel.component.mllp.configuration.bind-retry-interval* | TCP Server Only - The number of milliseconds to wait between bind attempts | 5000 | Integer
+| *camel.component.mllp.configuration.bind-timeout* | TCP Server Only - The number of milliseconds to retry binding to a server port | 30000 | Integer
+| *camel.component.mllp.configuration.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to receive incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. If disabled, the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions by logging them at WARN or ERROR level and ignored. | true | Boolean
+| *camel.component.mllp.configuration.charset-name* | Set the CamelCharsetName property on the exchange |  | String
+| *camel.component.mllp.configuration.connect-timeout* | Timeout (in milliseconds) for establishing for a TCP connection TCP Client only | 30000 | Integer
+| *camel.component.mllp.configuration.exchange-pattern* | Sets the exchange pattern when the consumer creates an exchange. |  | ExchangePattern
+| *camel.component.mllp.configuration.hl7-headers* | Enable/Disable the automatic generation of message headers from the HL7 Message MLLP Consumers only | true | Boolean
+| *camel.component.mllp.configuration.idle-timeout* | The approximate idle time allowed before the Client TCP Connection will be reset. A null value or a value less than or equal to zero will disable the idle timeout. |  | Integer
+| *camel.component.mllp.configuration.keep-alive* | Enable/disable the SO_KEEPALIVE socket option. | true | Boolean
+| *camel.component.mllp.configuration.lenient-bind* | TCP Server Only - Allow the endpoint to start before the TCP ServerSocket is bound. In some environments, it may be desirable to allow the endpoint to start before the TCP ServerSocket is bound. | false | Boolean
+| *camel.component.mllp.configuration.max-concurrent-consumers* | The maximum number of concurrent MLLP Consumer connections that will be allowed. If a new connection is received and the maximum is number are already established, the new connection will be reset immediately. | 5 | Integer
+| *camel.component.mllp.configuration.read-timeout* | The SO_TIMEOUT value (in milliseconds) used after the start of an MLLP frame has been received | 5000 | Integer
+| *camel.component.mllp.configuration.receive-buffer-size* | Sets the SO_RCVBUF option to the specified value (in bytes) | 8192 | Integer
+| *camel.component.mllp.configuration.receive-timeout* | The SO_TIMEOUT value (in milliseconds) used when waiting for the start of an MLLP frame | 15000 | Integer
+| *camel.component.mllp.configuration.require-end-of-data* | Enable/Disable strict compliance to the MLLP standard. The MLLP standard specifies START_OF_BLOCKhl7 payloadEND_OF_BLOCKEND_OF_DATA, however, some systems do not send the final END_OF_DATA byte. This setting controls whether or not the final END_OF_DATA byte is required or optional. | true | Boolean
+| *camel.component.mllp.configuration.reuse-address* | Enable/disable the SO_REUSEADDR socket option. | false | Boolean
+| *camel.component.mllp.configuration.send-buffer-size* | Sets the SO_SNDBUF option to the specified value (in bytes) | 8192 | Integer
+| *camel.component.mllp.configuration.string-payload* | Enable/Disable converting the payload to a String. If enabled, HL7 Payloads received from external systems will be validated converted to a String. If the charsetName property is set, that character set will be used for the conversion. If the charsetName property is not set, the value of MSH-18 will be used to determine th appropriate character set. If MSH-18 is not set, then the default ISO-8859-1 character set will be use. | true  [...]
+| *camel.component.mllp.configuration.synchronous* | Sets whether synchronous processing should be strictly used (this component only supports synchronous operations). | true | Boolean
+| *camel.component.mllp.configuration.tcp-no-delay* | Enable/disable the TCP_NODELAY socket option. | true | Boolean
+| *camel.component.mllp.configuration.validate-payload* | Enable/Disable the validation of HL7 Payloads If enabled, HL7 Payloads received from external systems will be validated (see Hl7Util.generateInvalidPayloadExceptionMessage for details on the validation). If and invalid payload is detected, a MllpInvalidMessageException (for consumers) or a MllpInvalidAcknowledgementException will be thrown. | false | Boolean
+| *camel.component.mllp.default-charset* | Set the default character set to use for byte to/from String conversions. The option is a java.nio.charset.Charset type. |  | String
+| *camel.component.mllp.enabled* | Whether to enable auto configuration of the mllp component. This is enabled by default. |  | Boolean
+| *camel.component.mllp.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.mllp.log-phi* | Set the component to log PHI data. | true | Boolean
+| *camel.component.mllp.log-phi-max-bytes* | Set the maximum number of bytes of PHI that will be logged in a log entry. | 5120 | Integer
+| *camel.component.mllp.configuration.buffer-writes* | *Deprecated* Enable/Disable the buffering of HL7 payloads before writing to the socket. | false | Boolean
+| *camel.component.mllp.configuration.max-receive-timeouts* | *Deprecated* The maximum number of timeouts (specified by receiveTimeout) allowed before the TCP Connection will be reset. |  | Integer
+|===
+
diff --git a/components-starter/camel-mock-starter/src/main/docs/mock-starter.adoc b/components-starter/camel-mock-starter/src/main/docs/mock-starter.adoc
new file mode 100644
index 0000000..520b54b
--- /dev/null
+++ b/components-starter/camel-mock-starter/src/main/docs/mock-starter.adoc
@@ -0,0 +1,27 @@
+== mock - Spring Boot Auto-Configuration
+
+When using mock with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mock-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mock.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mock.enabled* | Whether to enable auto configuration of the mock component. This is enabled by default. |  | Boolean
+| *camel.component.mock.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-mongodb-gridfs-starter/src/main/docs/mongodb-gridfs-starter.adoc b/components-starter/camel-mongodb-gridfs-starter/src/main/docs/mongodb-gridfs-starter.adoc
new file mode 100644
index 0000000..0ff2615
--- /dev/null
+++ b/components-starter/camel-mongodb-gridfs-starter/src/main/docs/mongodb-gridfs-starter.adoc
@@ -0,0 +1,28 @@
+== mongodb-gridfs - Spring Boot Auto-Configuration
+
+When using mongodb-gridfs with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mongodb-gridfs-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mongodb-gridfs.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mongodb-gridfs.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.mongodb-gridfs.enabled* | Whether to enable auto configuration of the mongodb-gridfs component. This is enabled by default. |  | Boolean
+| *camel.component.mongodb-gridfs.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+|===
+
diff --git a/components-starter/camel-mongodb-starter/src/main/docs/mongodb-starter.adoc b/components-starter/camel-mongodb-starter/src/main/docs/mongodb-starter.adoc
new file mode 100644
index 0000000..79fa10c
--- /dev/null
+++ b/components-starter/camel-mongodb-starter/src/main/docs/mongodb-starter.adoc
@@ -0,0 +1,29 @@
+== mongodb - Spring Boot Auto-Configuration
+
+When using mongodb with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mongodb-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mongodb.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mongodb.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.mongodb.enabled* | Whether to enable auto configuration of the mongodb component. This is enabled by default. |  | Boolean
+| *camel.component.mongodb.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.mongodb.mongo-connection* | A connection client provided externally. The option is a com.mongodb.client.MongoClient type. |  | String
+|===
+
diff --git a/components-starter/camel-msv-starter/src/main/docs/msv-starter.adoc b/components-starter/camel-msv-starter/src/main/docs/msv-starter.adoc
new file mode 100644
index 0000000..6a4cc5a
--- /dev/null
+++ b/components-starter/camel-msv-starter/src/main/docs/msv-starter.adoc
@@ -0,0 +1,29 @@
+== msv - Spring Boot Auto-Configuration
+
+When using msv with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-msv-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.msv.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.msv.enabled* | Whether to enable auto configuration of the msv component. This is enabled by default. |  | Boolean
+| *camel.component.msv.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.msv.resource-resolver-factory* | To use a custom LSResourceResolver which depends on a dynamic endpoint resource URI. The option is a org.apache.camel.component.validator.ValidatorResourceResolverFactory type. |  | String
+| *camel.component.msv.schema-factory* | To use the javax.xml.validation.SchemaFactory. The option is a javax.xml.validation.SchemaFactory type. |  | String
+|===
+
diff --git a/components-starter/camel-mustache-starter/src/main/docs/mustache-starter.adoc b/components-starter/camel-mustache-starter/src/main/docs/mustache-starter.adoc
new file mode 100644
index 0000000..a3dac72
--- /dev/null
+++ b/components-starter/camel-mustache-starter/src/main/docs/mustache-starter.adoc
@@ -0,0 +1,28 @@
+== mustache - Spring Boot Auto-Configuration
+
+When using mustache with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mustache-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mustache.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mustache.enabled* | Whether to enable auto configuration of the mustache component. This is enabled by default. |  | Boolean
+| *camel.component.mustache.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed t [...]
+| *camel.component.mustache.mustache-factory* | To use a custom MustacheFactory. The option is a com.github.mustachejava.MustacheFactory type. |  | String
+|===
+
diff --git a/components-starter/camel-mvel-starter/src/main/docs/mvel-starter.adoc b/components-starter/camel-mvel-starter/src/main/docs/mvel-starter.adoc
new file mode 100644
index 0000000..b6ae330
--- /dev/null
+++ b/components-starter/camel-mvel-starter/src/main/docs/mvel-starter.adoc
@@ -0,0 +1,29 @@
+== mvel - Spring Boot Auto-Configuration
+
+When using mvel with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mvel-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 5 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mvel.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mvel.enabled* | Whether to enable auto configuration of the mvel component. This is enabled by default. |  | Boolean
+| *camel.component.mvel.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.language.mvel.enabled* | Whether to enable auto configuration of the mvel language. This is enabled by default. |  | Boolean
+| *camel.language.mvel.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+|===
+
diff --git a/components-starter/camel-mybatis-starter/src/main/docs/mybatis-starter.adoc b/components-starter/camel-mybatis-starter/src/main/docs/mybatis-starter.adoc
new file mode 100644
index 0000000..3fb2de3
--- /dev/null
+++ b/components-starter/camel-mybatis-starter/src/main/docs/mybatis-starter.adoc
@@ -0,0 +1,35 @@
+== mybatis - Spring Boot Auto-Configuration
+
+When using mybatis with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-mybatis-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 11 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.mybatis-bean.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mybatis-bean.configuration-uri* | Location of MyBatis xml configuration file. The default value is: SqlMapConfig.xml loaded from the classpath | SqlMapConfig.xml | String
+| *camel.component.mybatis-bean.enabled* | Whether to enable auto configuration of the mybatis-bean component. This is enabled by default. |  | Boolean
+| *camel.component.mybatis-bean.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is process [...]
+| *camel.component.mybatis-bean.sql-session-factory* | To use the SqlSessionFactory. The option is a org.apache.ibatis.session.SqlSessionFactory type. |  | String
+| *camel.component.mybatis.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.mybatis.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.mybatis.configuration-uri* | Location of MyBatis xml configuration file. The default value is: SqlMapConfig.xml loaded from the classpath | SqlMapConfig.xml | String
+| *camel.component.mybatis.enabled* | Whether to enable auto configuration of the mybatis component. This is enabled by default. |  | Boolean
+| *camel.component.mybatis.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.mybatis.sql-session-factory* | To use the SqlSessionFactory. The option is a org.apache.ibatis.session.SqlSessionFactory type. |  | String
+|===
+
diff --git a/components-starter/camel-nagios-starter/src/main/docs/nagios-starter.adoc b/components-starter/camel-nagios-starter/src/main/docs/nagios-starter.adoc
new file mode 100644
index 0000000..e714b82
--- /dev/null
+++ b/components-starter/camel-nagios-starter/src/main/docs/nagios-starter.adoc
@@ -0,0 +1,34 @@
+== nagios - Spring Boot Auto-Configuration
+
+When using nagios with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-nagios-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 10 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.nagios.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.nagios.configuration.connection-timeout* | Connection timeout in millis. | 5000 | Integer
+| *camel.component.nagios.configuration.encryption* | To specify an encryption method. |  | Encryption
+| *camel.component.nagios.configuration.host* | This is the address of the Nagios host where checks should be send. |  | String
+| *camel.component.nagios.configuration.nagios-settings* |  |  | NagiosSettings
+| *camel.component.nagios.configuration.password* | Password to be authenticated when sending checks to Nagios. |  | String
+| *camel.component.nagios.configuration.port* | The port number of the host. |  | Integer
+| *camel.component.nagios.configuration.timeout* | Sending timeout in millis. | 5000 | Integer
+| *camel.component.nagios.enabled* | Whether to enable auto configuration of the nagios component. This is enabled by default. |  | Boolean
+| *camel.component.nagios.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-nats-starter/src/main/docs/nats-starter.adoc b/components-starter/camel-nats-starter/src/main/docs/nats-starter.adoc
new file mode 100644
index 0000000..49a9bc8
--- /dev/null
+++ b/components-starter/camel-nats-starter/src/main/docs/nats-starter.adoc
@@ -0,0 +1,30 @@
+== nats - Spring Boot Auto-Configuration
+
+When using nats with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-nats-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.nats.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.nats.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.nats.enabled* | Whether to enable auto configuration of the nats component. This is enabled by default. |  | Boolean
+| *camel.component.nats.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+| *camel.component.nats.servers* | URLs to one or more NAT servers. Use comma to separate URLs when specifying multiple servers. |  | String
+| *camel.component.nats.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-netty-http-starter/src/main/docs/netty-http-starter.adoc b/components-starter/camel-netty-http-starter/src/main/docs/netty-http-starter.adoc
new file mode 100644
index 0000000..23682de
--- /dev/null
+++ b/components-starter/camel-netty-http-starter/src/main/docs/netty-http-starter.adoc
@@ -0,0 +1,60 @@
+== netty-http - Spring Boot Auto-Configuration
+
+When using netty-http with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-netty-http-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 36 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.netty-http.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.netty-http.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.netty-http.configuration.bridge-endpoint* | If the option is true, the producer will ignore the Exchange.HTTP_URI header, and use the endpoint's URI for request. You may also set the throwExceptionOnFailure to be false to let the producer send all the fault response back. The consumer working in the bridge mode will skip the gzip compression and WWW URL form encoding (by adding the Exchange.SKIP_GZIP_ENCODING and Exchange.SKIP_WWW_FORM_URLENCODED headers to the consume [...]
+| *camel.component.netty-http.configuration.chunked-max-content-length* | Value in bytes the max content length per chunked frame received on the Netty HTTP server. | 1048576 | Integer
+| *camel.component.netty-http.configuration.compression* | Allow using gzip/deflate for compression on the Netty HTTP server if the client supports it from the HTTP headers. | false | Boolean
+| *camel.component.netty-http.configuration.disable-stream-cache* | Determines whether or not the raw input stream from Netty HttpRequest#getContent() or HttpResponset#getContent() is cached or not (Camel will read the stream into a in light-weight memory based Stream caching) cache. By default Camel will cache the Netty input stream to support reading it multiple times to ensure it Camel can retrieve all data from the stream. However you can set this option to true when you for example  [...]
+| *camel.component.netty-http.configuration.host* | The local hostname such as localhost, or 0.0.0.0 when being a consumer. The remote HTTP server hostname when using producer. |  | String
+| *camel.component.netty-http.configuration.log-warn-on-bad-request* | Whether Netty HTTP server should log a WARN if decoding the HTTP request failed and a HTTP Status 400 (bad request) is returned. | true | Boolean
+| *camel.component.netty-http.configuration.map-headers* | If this option is enabled, then during binding from Netty to Camel Message then the headers will be mapped as well (eg added as header to the Camel Message as well). You can turn off this option to disable this. The headers can still be accessed from the org.apache.camel.component.netty.http.NettyHttpMessage message with the method getHttpRequest() that returns the Netty HTTP request io.netty.handler.codec.http.HttpRequest instan [...]
+| *camel.component.netty-http.configuration.match-on-uri-prefix* | Whether or not Camel should try to find a target consumer by matching the URI prefix if no exact match is found. | false | Boolean
+| *camel.component.netty-http.configuration.max-header-size* | The maximum length of all headers. If the sum of the length of each header exceeds this value, a io.netty.handler.codec.TooLongFrameException will be raised. | 8192 | Integer
+| *camel.component.netty-http.configuration.mute-exception* | If enabled and an Exchange failed processing on the consumer side the response's body won't contain the exception's stack trace. | false | Boolean
+| *camel.component.netty-http.configuration.ok-status-code-range* | The status codes which are considered a success response. The values are inclusive. Multiple ranges can be defined, separated by comma, e.g. 200-204,209,301-304. Each range must be a single number or from-to with the dash included. The default range is 200-299 | 200-299 | String
+| *camel.component.netty-http.configuration.path* | Resource path |  | String
+| *camel.component.netty-http.configuration.port* | The host port number |  | Integer
+| *camel.component.netty-http.configuration.protocol* | The protocol to use which is either http, https or proxy - a consumer only option. |  | String
+| *camel.component.netty-http.configuration.send503when-suspended* | Whether to send back HTTP status code 503 when the consumer has been suspended. If the option is false then the Netty Acceptor is unbound when the consumer is suspended, so clients cannot connect anymore. | true | Boolean
+| *camel.component.netty-http.configuration.throw-exception-on-failure* | Option to disable throwing the HttpOperationFailedException in case of failed responses from the remote server. This allows you to get all responses regardless of the HTTP status code. | true | Boolean
+| *camel.component.netty-http.configuration.transfer-exception* | If enabled and an Exchange failed processing on the consumer side, and if the caused Exception was send back serialized in the response as a application/x-java-serialized-object content type. On the producer side the exception will be deserialized and thrown as is, instead of the HttpOperationFailedException. The caused exception is required to be serialized. This is by default turned off. If you enable this then be aware  [...]
+| *camel.component.netty-http.configuration.url-decode-headers* | If this option is enabled, then during binding from Netty to Camel Message then the header values will be URL decoded (eg %20 will be a space character. Notice this option is used by the default org.apache.camel.component.netty.http.NettyHttpBinding and therefore if you implement a custom org.apache.camel.component.netty.http.NettyHttpBinding then you would need to decode the headers accordingly to this option. | false | Boolean
+| *camel.component.netty-http.configuration.use-relative-path* | Sets whether to use a relative path in HTTP requests. | true | Boolean
+| *camel.component.netty-http.enabled* | Whether to enable auto configuration of the netty-http component. This is enabled by default. |  | Boolean
+| *camel.component.netty-http.executor-service* | To use the given EventExecutorGroup. The option is a io.netty.util.concurrent.EventExecutorGroup type. |  | String
+| *camel.component.netty-http.header-filter-strategy* | To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter headers. The option is a org.apache.camel.spi.HeaderFilterStrategy type. |  | String
+| *camel.component.netty-http.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed [...]
+| *camel.component.netty-http.maximum-pool-size* | Sets a maximum thread pool size for the netty consumer ordered thread pool. The default size is 2 x cpu_core plus 1. Setting this value to eg 10 will then use 10 threads unless 2 x cpu_core plus 1 is a higher value, which then will override and be used. For example if there are 8 cores, then the consumer thread pool will be 17. This thread pool is used to route messages received from Netty by Camel. We use a separate thread pool to ensur [...]
+| *camel.component.netty-http.netty-http-binding* | To use a custom org.apache.camel.component.netty.http.NettyHttpBinding for binding to/from Netty and Camel Message API. The option is a org.apache.camel.component.netty.http.NettyHttpBinding type. |  | String
+| *camel.component.netty-http.security-configuration.authenticate* |  |  | Boolean
+| *camel.component.netty-http.security-configuration.constraint* |  |  | String
+| *camel.component.netty-http.security-configuration.login-denied-logging-level* |  |  | LoggingLevel
+| *camel.component.netty-http.security-configuration.realm* |  |  | String
+| *camel.component.netty-http.security-configuration.role-class-name* |  |  | String
+| *camel.component.netty-http.security-configuration.security-authenticator* |  |  | SecurityAuthenticator
+| *camel.component.netty-http.security-configuration.security-constraint* |  |  | SecurityConstraint
+| *camel.component.netty-http.ssl-context-parameters* | To configure security using SSLContextParameters. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.netty-http.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-netty-starter/src/main/docs/netty-starter.adoc b/components-starter/camel-netty-starter/src/main/docs/netty-starter.adoc
new file mode 100644
index 0000000..ad61c3d
--- /dev/null
+++ b/components-starter/camel-netty-starter/src/main/docs/netty-starter.adoc
@@ -0,0 +1,104 @@
+== netty - Spring Boot Auto-Configuration
+
+When using netty with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-netty-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 80 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.netty.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.netty.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.netty.configuration.allow-default-codec* | The netty component installs a default codec if both, encoder/decoder is null and textline is false. Setting allowDefaultCodec to false prevents the netty component from installing a default codec as the first element in the filter chain. | true | Boolean
+| *camel.component.netty.configuration.allow-serialized-headers* | Only used for TCP when transferExchange is true. When set to true, serializable objects in headers and properties will be added to the exchange. Otherwise Camel will exclude any non-serializable objects and log it at WARN level. | false | Boolean
+| *camel.component.netty.configuration.auto-append-delimiter* | Whether or not to auto append missing end delimiter when sending using the textline codec. | true | Boolean
+| *camel.component.netty.configuration.backlog* | Allows to configure a backlog for netty consumer (server). Note the backlog is just a best effort depending on the OS. Setting this option to a value such as 200, 500 or 1000, tells the TCP stack how long the accept queue can be If this option is not configured, then the backlog depends on OS setting. |  | Integer
+| *camel.component.netty.configuration.boss-count* | When netty works on nio mode, it uses default bossCount parameter from Netty, which is 1. User can use this option to override the default bossCount from Netty | 1 | Integer
+| *camel.component.netty.configuration.boss-group* | Set the BossGroup which could be used for handling the new connection of the server side across the NettyEndpoint |  | EventLoopGroup
+| *camel.component.netty.configuration.broadcast* | Setting to choose Multicast over UDP | false | Boolean
+| *camel.component.netty.configuration.channel-group* | To use a explicit ChannelGroup. |  | ChannelGroup
+| *camel.component.netty.configuration.client-initializer-factory* | To use a custom ClientInitializerFactory |  | ClientInitializerFactory
+| *camel.component.netty.configuration.client-mode* | If the clientMode is true, netty consumer will connect the address as a TCP client. | false | Boolean
+| *camel.component.netty.configuration.connect-timeout* | Time to wait for a socket connection to be available. Value is in milliseconds. | 10000 | Integer
+| *camel.component.netty.configuration.correlation-manager* | To use a custom correlation manager to manage how request and reply messages are mapped when using request/reply with the netty producer. This should only be used if you have a way to map requests together with replies such as if there is correlation ids in both the request and reply messages. This can be used if you want to multiplex concurrent messages on the same channel (aka connection) in netty. When doing this you must h [...]
+| *camel.component.netty.configuration.decoder* |  |  | ChannelHandler
+| *camel.component.netty.configuration.decoder-max-line-length* | The max line length to use for the textline codec. | 1024 | Integer
+| *camel.component.netty.configuration.decoders* | A list of decoders to be used. You can use a String which have values separated by comma, and have the values be looked up in the Registry. Just remember to prefix the value with # so Camel knows it should lookup. |  | List
+| *camel.component.netty.configuration.delimiter* | The delimiter to use for the textline codec. Possible values are LINE and NULL. |  | TextLineDelimiter
+| *camel.component.netty.configuration.disconnect* | Whether or not to disconnect(close) from Netty Channel right after use. Can be used for both consumer and producer. | false | Boolean
+| *camel.component.netty.configuration.disconnect-on-no-reply* | If sync is enabled then this option dictates NettyConsumer if it should disconnect where there is no reply to send back. | true | Boolean
+| *camel.component.netty.configuration.enabled-protocols* | Which protocols to enable when using SSL | TLSv1,TLSv1.1,TLSv1.2 | String
+| *camel.component.netty.configuration.encoder* |  |  | ChannelHandler
+| *camel.component.netty.configuration.encoders* | A list of encoders to be used. You can use a String which have values separated by comma, and have the values be looked up in the Registry. Just remember to prefix the value with # so Camel knows it should lookup. |  | List
+| *camel.component.netty.configuration.encoding* | The encoding (a charset name) to use for the textline codec. If not provided, Camel will use the JVM default Charset. |  | String
+| *camel.component.netty.configuration.host* | The hostname. For the consumer the hostname is localhost or 0.0.0.0. For the producer the hostname is the remote host to connect to |  | String
+| *camel.component.netty.configuration.keep-alive* | Setting to ensure socket is not closed due to inactivity | true | Boolean
+| *camel.component.netty.configuration.key-store-format* | Keystore format to be used for payload encryption. Defaults to JKS if not set |  | String
+| *camel.component.netty.configuration.key-store-resource* | Client side certificate keystore to be used for encryption. Is loaded by default from classpath, but you can prefix with classpath:, file:, or http: to load the resource from different systems. |  | String
+| *camel.component.netty.configuration.lazy-channel-creation* | Channels can be lazily created to avoid exceptions, if the remote server is not up and running when the Camel producer is started. | true | Boolean
+| *camel.component.netty.configuration.native-transport* | Whether to use native transport instead of NIO. Native transport takes advantage of the host operating system and is only supported on some platforms. You need to add the netty JAR for the host operating system you are using. See more details at: \http://netty.io/wiki/native-transports.html | false | Boolean
+| *camel.component.netty.configuration.need-client-auth* | Configures whether the server needs client authentication when using SSL. | false | Boolean
+| *camel.component.netty.configuration.netty-server-bootstrap-factory* | To use a custom NettyServerBootstrapFactory |  | NettyServerBootstrapFactory
+| *camel.component.netty.configuration.network-interface* | When using UDP then this option can be used to specify a network interface by its name, such as eth0 to join a multicast group. |  | String
+| *camel.component.netty.configuration.no-reply-log-level* | If sync is enabled this option dictates NettyConsumer which logging level to use when logging a there is no reply to send back. |  | LoggingLevel
+| *camel.component.netty.configuration.options* | Allows to configure additional netty options using option. as prefix. For example option.child.keepAlive=false to set the netty option child.keepAlive=false. See the Netty documentation for possible options that can be used. |  | Map
+| *camel.component.netty.configuration.passphrase* | Password setting to use in order to encrypt/decrypt payloads sent using SSH |  | String
+| *camel.component.netty.configuration.port* | The host port number |  | Integer
+| *camel.component.netty.configuration.producer-pool-enabled* | Whether producer pool is enabled or not. Important: If you turn this off then a single shared connection is used for the producer, also if you are doing request/reply. That means there is a potential issue with interleaved responses if replies comes back out-of-order. Therefore you need to have a correlation id in both the request and reply messages so you can properly correlate the replies to the Camel callback that is resp [...]
+| *camel.component.netty.configuration.producer-pool-max-active* | Sets the cap on the number of objects that can be allocated by the pool (checked out to clients, or idle awaiting checkout) at a given time. Use a negative value for no limit. | -1 | Integer
+| *camel.component.netty.configuration.producer-pool-max-idle* | Sets the cap on the number of idle instances in the pool. | 100 | Integer
+| *camel.component.netty.configuration.producer-pool-min-evictable-idle* | Sets the minimum amount of time (value in millis) an object may sit idle in the pool before it is eligible for eviction by the idle object evictor. | 300000 | Long
+| *camel.component.netty.configuration.producer-pool-min-idle* | Sets the minimum number of instances allowed in the producer pool before the evictor thread (if active) spawns new objects. |  | Integer
+| *camel.component.netty.configuration.protocol* | The protocol to use which can be tcp or udp. |  | String
+| *camel.component.netty.configuration.receive-buffer-size* | The TCP/UDP buffer sizes to be used during inbound communication. Size is bytes. | 65536 | Integer
+| *camel.component.netty.configuration.receive-buffer-size-predictor* | Configures the buffer size predictor. See details at Jetty documentation and this mail thread. |  | Integer
+| *camel.component.netty.configuration.reconnect* | Used only in clientMode in consumer, the consumer will attempt to reconnect on disconnection if this is enabled | true | Boolean
+| *camel.component.netty.configuration.reconnect-interval* | Used if reconnect and clientMode is enabled. The interval in milli seconds to attempt reconnection | 10000 | Integer
+| *camel.component.netty.configuration.request-timeout* | Allows to use a timeout for the Netty producer when calling a remote server. By default no timeout is in use. The value is in milli seconds, so eg 30000 is 30 seconds. The requestTimeout is using Netty's ReadTimeoutHandler to trigger the timeout. |  | Long
+| *camel.component.netty.configuration.reuse-address* | Setting to facilitate socket multiplexing | true | Boolean
+| *camel.component.netty.configuration.reuse-channel* | This option allows producers and consumers (in client mode) to reuse the same Netty Channel for the lifecycle of processing the Exchange. This is useful if you need to call a server multiple times in a Camel route and want to use the same network connection. When using this, the channel is not returned to the connection pool until the Exchange is done; or disconnected if the disconnect option is set to true. The reused Channel is st [...]
+| *camel.component.netty.configuration.security-provider* | Security provider to be used for payload encryption. Defaults to SunX509 if not set. |  | String
+| *camel.component.netty.configuration.send-buffer-size* | The TCP/UDP buffer sizes to be used during outbound communication. Size is bytes. | 65536 | Integer
+| *camel.component.netty.configuration.server-closed-channel-exception-caught-log-level* | If the server (NettyConsumer) catches an java.nio.channels.ClosedChannelException then its logged using this logging level. This is used to avoid logging the closed channel exceptions, as clients can disconnect abruptly and then cause a flood of closed exceptions in the Netty server. |  | LoggingLevel
+| *camel.component.netty.configuration.server-exception-caught-log-level* | If the server (NettyConsumer) catches an exception then its logged using this logging level. |  | LoggingLevel
+| *camel.component.netty.configuration.server-initializer-factory* | To use a custom ServerInitializerFactory |  | ServerInitializerFactory
+| *camel.component.netty.configuration.ssl* | Setting to specify whether SSL encryption is applied to this endpoint | false | Boolean
+| *camel.component.netty.configuration.ssl-client-cert-headers* | When enabled and in SSL mode, then the Netty consumer will enrich the Camel Message with headers having information about the client certificate such as subject name, issuer name, serial number, and the valid date range. | false | Boolean
+| *camel.component.netty.configuration.ssl-context-parameters* | To configure security using SSLContextParameters |  | SSLContextParameters
+| *camel.component.netty.configuration.ssl-handler* | Reference to a class that could be used to return an SSL Handler |  | SslHandler
+| *camel.component.netty.configuration.sync* | Setting to set endpoint as one-way or request-response | true | Boolean
+| *camel.component.netty.configuration.tcp-no-delay* | Setting to improve TCP protocol performance | true | Boolean
+| *camel.component.netty.configuration.textline* | Only used for TCP. If no codec is specified, you can use this flag to indicate a text line based codec; if not specified or the value is false, then Object Serialization is assumed over TCP - however only Strings are allowed to be serialized by default. | false | Boolean
+| *camel.component.netty.configuration.transfer-exchange* | Only used for TCP. You can transfer the exchange over the wire instead of just the body. The following fields are transferred: In body, Out body, fault body, In headers, Out headers, fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. | false | Boolean
+| *camel.component.netty.configuration.trust-store-resource* | Server side certificate keystore to be used for encryption. Is loaded by default from classpath, but you can prefix with classpath:, file:, or http: to load the resource from different systems. |  | String
+| *camel.component.netty.configuration.udp-byte-array-codec* | For UDP only. If enabled the using byte array codec instead of Java serialization protocol. | false | Boolean
+| *camel.component.netty.configuration.udp-connectionless-sending* | This option supports connection less udp sending which is a real fire and forget. A connected udp send receive the PortUnreachableException if no one is listen on the receiving port. | false | Boolean
+| *camel.component.netty.configuration.use-byte-buf* | If the useByteBuf is true, netty producer will turn the message body into ByteBuf before sending it out. | false | Boolean
+| *camel.component.netty.configuration.using-executor-service* | Whether to use ordered thread pool, to ensure events are processed orderly on the same channel. | true | Boolean
+| *camel.component.netty.configuration.worker-count* | When netty works on nio mode, it uses default workerCount parameter from Netty (which is cpu_core_threads x 2). User can use this option to override the default workerCount from Netty. |  | Integer
+| *camel.component.netty.configuration.worker-group* | To use a explicit EventLoopGroup as the boss thread pool. For example to share a thread pool with multiple consumers or producers. By default each consumer or producer has their own worker pool with 2 x cpu count core threads. |  | EventLoopGroup
+| *camel.component.netty.enabled* | Whether to enable auto configuration of the netty component. This is enabled by default. |  | Boolean
+| *camel.component.netty.executor-service* | To use the given EventExecutorGroup. The option is a io.netty.util.concurrent.EventExecutorGroup type. |  | String
+| *camel.component.netty.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then [...]
+| *camel.component.netty.maximum-pool-size* | Sets a maximum thread pool size for the netty consumer ordered thread pool. The default size is 2 x cpu_core plus 1. Setting this value to eg 10 will then use 10 threads unless 2 x cpu_core plus 1 is a higher value, which then will override and be used. For example if there are 8 cores, then the consumer thread pool will be 17. This thread pool is used to route messages received from Netty by Camel. We use a separate thread pool to ensure ord [...]
+| *camel.component.netty.ssl-context-parameters* | To configure security using SSLContextParameters. The option is a org.apache.camel.support.jsse.SSLContextParameters type. |  | String
+| *camel.component.netty.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+| *camel.component.netty.configuration.client-pipeline-factory* | *Deprecated*  |  | ClientInitializerFactory
+| *camel.component.netty.configuration.key-store-file* | *Deprecated* Client side certificate keystore to be used for encryption |  | File
+| *camel.component.netty.configuration.server-pipeline-factory* | *Deprecated*  |  | ServerInitializerFactory
+| *camel.component.netty.configuration.trust-store-file* | *Deprecated* Server side certificate keystore to be used for encryption |  | File
+|===
+
diff --git a/components-starter/camel-nitrite-starter/src/main/docs/nitrite-starter.adoc b/components-starter/camel-nitrite-starter/src/main/docs/nitrite-starter.adoc
new file mode 100644
index 0000000..2ba6609
--- /dev/null
+++ b/components-starter/camel-nitrite-starter/src/main/docs/nitrite-starter.adoc
@@ -0,0 +1,28 @@
+== nitrite - Spring Boot Auto-Configuration
+
+When using nitrite with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-nitrite-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.nitrite.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.nitrite.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.nitrite.enabled* | Whether to enable auto configuration of the nitrite component. This is enabled by default. |  | Boolean
+| *camel.component.nitrite.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-nsq-starter/src/main/docs/nsq-starter.adoc b/components-starter/camel-nsq-starter/src/main/docs/nsq-starter.adoc
new file mode 100644
index 0000000..1f841d4
--- /dev/null
+++ b/components-starter/camel-nsq-starter/src/main/docs/nsq-starter.adoc
@@ -0,0 +1,30 @@
+== nsq - Spring Boot Auto-Configuration
+
+When using nsq with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-nsq-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 6 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.nsq.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.nsq.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.nsq.enabled* | Whether to enable auto configuration of the nsq component. This is enabled by default. |  | Boolean
+| *camel.component.nsq.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+| *camel.component.nsq.servers* | The hostnames of one or more nsqlookupd servers (consumer) or nsqd servers (producer). |  | String
+| *camel.component.nsq.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-ognl-starter/src/main/docs/ognl-starter.adoc b/components-starter/camel-ognl-starter/src/main/docs/ognl-starter.adoc
new file mode 100644
index 0000000..11e1db7
--- /dev/null
+++ b/components-starter/camel-ognl-starter/src/main/docs/ognl-starter.adoc
@@ -0,0 +1,26 @@
+== ognl - Spring Boot Auto-Configuration
+
+When using ognl with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-ognl-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 2 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.language.ognl.enabled* | Whether to enable auto configuration of the ognl language. This is enabled by default. |  | Boolean
+| *camel.language.ognl.trim* | Whether to trim the value to remove leading and trailing whitespaces and line breaks | true | Boolean
+|===
+
diff --git a/components-starter/camel-olingo2-starter/src/main/docs/olingo2-starter.adoc b/components-starter/camel-olingo2-starter/src/main/docs/olingo2-starter.adoc
new file mode 100644
index 0000000..ae7aeaf
--- /dev/null
+++ b/components-starter/camel-olingo2-starter/src/main/docs/olingo2-starter.adoc
@@ -0,0 +1,42 @@
+== olingo2 - Spring Boot Auto-Configuration
+
+When using olingo2 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-olingo2-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 18 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.olingo2.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.olingo2.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.olingo2.configuration.api-name* | What kind of operation to perform |  | Olingo2ApiName
+| *camel.component.olingo2.configuration.connect-timeout* | HTTP connection creation timeout in milliseconds, defaults to 30,000 (30 seconds) | 30000 | Integer
+| *camel.component.olingo2.configuration.content-type* | Content-Type header value can be used to specify JSON or XML message format, defaults to application/json;charset=utf-8 | application/json;charset=utf-8 | String
+| *camel.component.olingo2.configuration.filter-already-seen* | Set this to true to filter out results that have already been communicated by this component. | false | Boolean
+| *camel.component.olingo2.configuration.http-async-client-builder* | Custom HTTP async client builder for more complex HTTP client configuration, overrides connectionTimeout, socketTimeout, proxy and sslContext. Note that a socketTimeout MUST be specified in the builder, otherwise OData requests could block indefinitely |  | HttpAsyncClientBuilder
+| *camel.component.olingo2.configuration.http-client-builder* | Custom HTTP client builder for more complex HTTP client configuration, overrides connectionTimeout, socketTimeout, proxy and sslContext. Note that a socketTimeout MUST be specified in the builder, otherwise OData requests could block indefinitely |  | HttpClientBuilder
+| *camel.component.olingo2.configuration.http-headers* | Custom HTTP headers to inject into every request, this could include OAuth tokens, etc. |  | Map
+| *camel.component.olingo2.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.olingo2.configuration.proxy* | HTTP proxy server configuration |  | HttpHost
+| *camel.component.olingo2.configuration.service-uri* | Target OData service base URI, e.g. \http://services.odata.org/OData/OData.svc |  | String
+| *camel.component.olingo2.configuration.socket-timeout* | HTTP request timeout in milliseconds, defaults to 30,000 (30 seconds) | 30000 | Integer
+| *camel.component.olingo2.configuration.split-result* | For endpoints that return an array or collection, a consumer endpoint will map every element to distinct messages, unless splitResult is set to false. | true | Boolean
+| *camel.component.olingo2.configuration.ssl-context-parameters* | To configure security using SSLContextParameters |  | SSLContextParameters
+| *camel.component.olingo2.enabled* | Whether to enable auto configuration of the olingo2 component. This is enabled by default. |  | Boolean
+| *camel.component.olingo2.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.olingo2.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-olingo4-starter/src/main/docs/olingo4-starter.adoc b/components-starter/camel-olingo4-starter/src/main/docs/olingo4-starter.adoc
new file mode 100644
index 0000000..5cf2bd2
--- /dev/null
+++ b/components-starter/camel-olingo4-starter/src/main/docs/olingo4-starter.adoc
@@ -0,0 +1,42 @@
+== olingo4 - Spring Boot Auto-Configuration
+
+When using olingo4 with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-olingo4-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 18 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.olingo4.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.olingo4.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.olingo4.configuration.api-name* | What kind of operation to perform |  | Olingo4ApiName
+| *camel.component.olingo4.configuration.connect-timeout* | HTTP connection creation timeout in milliseconds, defaults to 30,000 (30 seconds) | 30000 | Integer
+| *camel.component.olingo4.configuration.content-type* | Content-Type header value can be used to specify JSON or XML message format, defaults to application/json;charset=utf-8 | application/json;charset=utf-8 | String
+| *camel.component.olingo4.configuration.filter-already-seen* | Set this to true to filter out results that have already been communicated by this component. | false | Boolean
+| *camel.component.olingo4.configuration.http-async-client-builder* | Custom HTTP async client builder for more complex HTTP client configuration, overrides connectionTimeout, socketTimeout, proxy and sslContext. Note that a socketTimeout MUST be specified in the builder, otherwise OData requests could block indefinitely |  | HttpAsyncClientBuilder
+| *camel.component.olingo4.configuration.http-client-builder* | Custom HTTP client builder for more complex HTTP client configuration, overrides connectionTimeout, socketTimeout, proxy and sslContext. Note that a socketTimeout MUST be specified in the builder, otherwise OData requests could block indefinitely |  | HttpClientBuilder
+| *camel.component.olingo4.configuration.http-headers* | Custom HTTP headers to inject into every request, this could include OAuth tokens, etc. |  | Map
+| *camel.component.olingo4.configuration.method-name* | What sub operation to use for the selected operation |  | String
+| *camel.component.olingo4.configuration.proxy* | HTTP proxy server configuration |  | HttpHost
+| *camel.component.olingo4.configuration.service-uri* | Target OData service base URI, e.g. \http://services.odata.org/OData/OData.svc |  | String
+| *camel.component.olingo4.configuration.socket-timeout* | HTTP request timeout in milliseconds, defaults to 30,000 (30 seconds) | 30000 | Integer
+| *camel.component.olingo4.configuration.split-result* | For endpoints that return an array or collection, a consumer endpoint will map every element to distinct messages, unless splitResult is set to false. | true | Boolean
+| *camel.component.olingo4.configuration.ssl-context-parameters* | To configure security using SSLContextParameters |  | SSLContextParameters
+| *camel.component.olingo4.enabled* | Whether to enable auto configuration of the olingo4 component. This is enabled by default. |  | Boolean
+| *camel.component.olingo4.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+| *camel.component.olingo4.use-global-ssl-context-parameters* | Enable usage of global SSL context parameters. | false | Boolean
+|===
+
diff --git a/components-starter/camel-openstack-starter/src/main/docs/openstack-starter.adoc b/components-starter/camel-openstack-starter/src/main/docs/openstack-starter.adoc
new file mode 100644
index 0000000..bdad0dd
--- /dev/null
+++ b/components-starter/camel-openstack-starter/src/main/docs/openstack-starter.adoc
@@ -0,0 +1,42 @@
+== openstack - Spring Boot Auto-Configuration
+
+When using openstack with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-openstack-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 18 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.openstack-cinder.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.openstack-cinder.enabled* | Whether to enable auto configuration of the openstack-cinder component. This is enabled by default. |  | Boolean
+| *camel.component.openstack-cinder.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is pro [...]
+| *camel.component.openstack-glance.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.openstack-glance.enabled* | Whether to enable auto configuration of the openstack-glance component. This is enabled by default. |  | Boolean
+| *camel.component.openstack-glance.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is pro [...]
+| *camel.component.openstack-keystone.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.openstack-keystone.enabled* | Whether to enable auto configuration of the openstack-keystone component. This is enabled by default. |  | Boolean
+| *camel.component.openstack-keystone.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is p [...]
+| *camel.component.openstack-neutron.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.openstack-neutron.enabled* | Whether to enable auto configuration of the openstack-neutron component. This is enabled by default. |  | Boolean
+| *camel.component.openstack-neutron.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is pr [...]
+| *camel.component.openstack-nova.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.openstack-nova.enabled* | Whether to enable auto configuration of the openstack-nova component. This is enabled by default. |  | Boolean
+| *camel.component.openstack-nova.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proce [...]
+| *camel.component.openstack-swift.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.openstack-swift.enabled* | Whether to enable auto configuration of the openstack-swift component. This is enabled by default. |  | Boolean
+| *camel.component.openstack-swift.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is proc [...]
+|===
+
diff --git a/components-starter/camel-opentracing-starter/src/main/docs/opentracing-starter.adoc b/components-starter/camel-opentracing-starter/src/main/docs/opentracing-starter.adoc
new file mode 100644
index 0000000..60f0165
--- /dev/null
+++ b/components-starter/camel-opentracing-starter/src/main/docs/opentracing-starter.adoc
@@ -0,0 +1,26 @@
+== opentracing - Spring Boot Auto-Configuration
+
+When using opentracing with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-opentracing-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 2 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.opentracing.encoding* | Activate or deactivate dash encoding in headers (required by JMS) for messaging |  | Boolean
+| *camel.opentracing.exclude-patterns* | Sets exclude pattern(s) that will disable tracing for Camel messages that matches the pattern. |  | Set
+|===
+
diff --git a/components-starter/camel-optaplanner-starter/src/main/docs/optaplanner-starter.adoc b/components-starter/camel-optaplanner-starter/src/main/docs/optaplanner-starter.adoc
new file mode 100644
index 0000000..cdc2bee
--- /dev/null
+++ b/components-starter/camel-optaplanner-starter/src/main/docs/optaplanner-starter.adoc
@@ -0,0 +1,28 @@
+== optaplanner - Spring Boot Auto-Configuration
+
+When using optaplanner with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-optaplanner-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.optaplanner.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.optaplanner.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.optaplanner.enabled* | Whether to enable auto configuration of the optaplanner component. This is enabled by default. |  | Boolean
+| *camel.component.optaplanner.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processe [...]
+|===
+
diff --git a/components-starter/camel-paho-starter/src/main/docs/paho-starter.adoc b/components-starter/camel-paho-starter/src/main/docs/paho-starter.adoc
new file mode 100644
index 0000000..5b65adb
--- /dev/null
+++ b/components-starter/camel-paho-starter/src/main/docs/paho-starter.adoc
@@ -0,0 +1,56 @@
+== paho - Spring Boot Auto-Configuration
+
+When using paho with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-paho-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 32 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.paho.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.paho.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.paho.broker-url* | The URL of the MQTT broker. |  | String
+| *camel.component.paho.client* | To use a shared Paho client. The option is a org.eclipse.paho.client.mqttv3.MqttClient type. |  | String
+| *camel.component.paho.configuration.automatic-reconnect* | Sets whether the client will automatically attempt to reconnect to the server if the connection is lost. If set to false, the client will not attempt to automatically reconnect to the server in the event that the connection is lost. If set to true, in the event that the connection is lost, the client will attempt to reconnect to the server. It will initially wait 1 second before it attempts to reconnect, for every failed reconn [...]
+| *camel.component.paho.configuration.broker-url* | The URL of the MQTT broker. | tcp://localhost:1883 | String
+| *camel.component.paho.configuration.clean-session* | Sets whether the client and server should remember state across restarts and reconnects. If set to false both the client and server will maintain state across restarts of the client, the server and the connection. As state is maintained: Message delivery will be reliable meeting the specified QOS even if the client, server or connection are restarted. The server will treat a subscription as durable. If set to true the client and serv [...]
+| *camel.component.paho.configuration.client-id* | MQTT client identifier. The identifier must be unique. |  | String
+| *camel.component.paho.configuration.connection-timeout* | Sets the connection timeout value. This value, measured in seconds, defines the maximum time interval the client will wait for the network connection to the MQTT server to be established. The default timeout is 30 seconds. A value of 0 disables timeout processing meaning the client will wait until the network connection is made successfully or fails. | 30 | Integer
+| *camel.component.paho.configuration.custom-web-socket-headers* | Sets the Custom WebSocket Headers for the WebSocket Connection. |  | Properties
+| *camel.component.paho.configuration.executor-service-timeout* | Set the time in seconds that the executor service should wait when terminating before forcefully terminating. It is not recommended to change this value unless you are absolutely sure that you need to. | 1 | Integer
+| *camel.component.paho.configuration.file-persistence-directory* | Base directory used by file persistence. Will by default use user directory. |  | String
+| *camel.component.paho.configuration.https-hostname-verification-enabled* | Whether SSL HostnameVerifier is enabled or not. The default value is true. | true | Boolean
+| *camel.component.paho.configuration.keep-alive-interval* | Sets the keep alive interval. This value, measured in seconds, defines the maximum time interval between messages sent or received. It enables the client to detect if the server is no longer available, without having to wait for the TCP/IP timeout. The client will ensure that at least one message travels across the network within each keep alive period. In the absence of a data-related message during the time period, the client [...]
+| *camel.component.paho.configuration.max-inflight* | Sets the max inflight. please increase this value in a high traffic environment. The default value is 10 | 10 | Integer
+| *camel.component.paho.configuration.max-reconnect-delay* | Get the maximum time (in millis) to wait between reconnects | 128000 | Integer
+| *camel.component.paho.configuration.mqtt-version* | Sets the MQTT version. The default action is to connect with version 3.1.1, and to fall back to 3.1 if that fails. Version 3.1.1 or 3.1 can be selected specifically, with no fall back, by using the MQTT_VERSION_3_1_1 or MQTT_VERSION_3_1 options respectively. |  | Integer
+| *camel.component.paho.configuration.password* | Password to be used for authentication against the MQTT broker |  | String
+| *camel.component.paho.configuration.persistence* | Client persistence to be used - memory or file. |  | PahoPersistence
+| *camel.component.paho.configuration.qos* | Client quality of service level (0-2). | 2 | Integer
+| *camel.component.paho.configuration.retained* | Retain option | false | Boolean
+| *camel.component.paho.configuration.server-u-r-is* | Set a list of one or more serverURIs the client may connect to. Multiple servers can be separated by comma. Each serverURI specifies the address of a server that the client may connect to. Two types of connection are supported tcp:// for a TCP connection and ssl:// for a TCP connection secured by SSL/TLS. For example: tcp://localhost:1883 ssl://localhost:8883 If the port is not specified, it will default to 1883 for tcp:// URIs, and  [...]
+| *camel.component.paho.configuration.socket-factory* | Sets the SocketFactory to use. This allows an application to apply its own policies around the creation of network sockets. If using an SSL connection, an SSLSocketFactory can be used to supply application-specific security settings. |  | SocketFactory
+| *camel.component.paho.configuration.ssl-client-props* | Sets the SSL properties for the connection. Note that these properties are only valid if an implementation of the Java Secure Socket Extensions (JSSE) is available. These properties are not used if a custom SocketFactory has been set. The following properties can be used: com.ibm.ssl.protocol One of: SSL, SSLv3, TLS, TLSv1, SSL_TLS. com.ibm.ssl.contextProvider Underlying JSSE provider. For example IBMJSSE2 or SunJSSE com.ibm.ssl.k [...]
+| *camel.component.paho.configuration.ssl-hostname-verifier* | Sets the HostnameVerifier for the SSL connection. Note that it will be used after handshake on a connection and you should do actions by yourself when hostname is verified error. There is no default HostnameVerifier |  | HostnameVerifier
+| *camel.component.paho.configuration.user-name* | Username to be used for authentication against the MQTT broker |  | String
+| *camel.component.paho.configuration.will-payload* | Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The topic to publish to The byte payload for the message. The quality of service to publish the message at (0, 1 or 2). Whether or not the message should be retained. |  | String
+| *camel.component.paho.configuration.will-qos* | Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The topic to publish to The byte payload for the message. The quality of service to publish the message at (0, 1 or 2). Whether or not the message should be retained. |  | Integer
+| *camel.component.paho.configuration.will-retained* | Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The topic to publish to The byte payload for the message. The quality of service to publish the message at (0, 1 or 2). Whether or not the message should be retained. | false | Boolean
+| *camel.component.paho.configuration.will-topic* | Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The topic to publish to The byte payload for the message. The quality of service to publish the message at (0, 1 or 2). Whether or not the message should be retained. |  | String
+| *camel.component.paho.enabled* | Whether to enable auto configuration of the paho component. This is enabled by default. |  | Boolean
+| *camel.component.paho.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then  [...]
+|===
+
diff --git a/components-starter/camel-pdf-starter/src/main/docs/pdf-starter.adoc b/components-starter/camel-pdf-starter/src/main/docs/pdf-starter.adoc
new file mode 100644
index 0000000..48d4bd3
--- /dev/null
+++ b/components-starter/camel-pdf-starter/src/main/docs/pdf-starter.adoc
@@ -0,0 +1,27 @@
+== pdf - Spring Boot Auto-Configuration
+
+When using pdf with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-pdf-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.pdf.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.pdf.enabled* | Whether to enable auto configuration of the pdf component. This is enabled by default. |  | Boolean
+| *camel.component.pdf.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-pg-replication-slot-starter/src/main/docs/pg-replication-slot-starter.adoc b/components-starter/camel-pg-replication-slot-starter/src/main/docs/pg-replication-slot-starter.adoc
new file mode 100644
index 0000000..683ce9c
--- /dev/null
+++ b/components-starter/camel-pg-replication-slot-starter/src/main/docs/pg-replication-slot-starter.adoc
@@ -0,0 +1,27 @@
+== pg-replication-slot - Spring Boot Auto-Configuration
+
+When using pg-replication-slot with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-pg-replication-slot-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.pg-replication-slot.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.pg-replication-slot.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.pg-replication-slot.enabled* | Whether to enable auto configuration of the pg-replication-slot component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-pgevent-starter/src/main/docs/pgevent-starter.adoc b/components-starter/camel-pgevent-starter/src/main/docs/pgevent-starter.adoc
new file mode 100644
index 0000000..275aa86
--- /dev/null
+++ b/components-starter/camel-pgevent-starter/src/main/docs/pgevent-starter.adoc
@@ -0,0 +1,28 @@
+== pgevent - Spring Boot Auto-Configuration
+
+When using pgevent with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-pgevent-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.pgevent.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.pgevent.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.pgevent.enabled* | Whether to enable auto configuration of the pgevent component. This is enabled by default. |  | Boolean
+| *camel.component.pgevent.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed th [...]
+|===
+
diff --git a/components-starter/camel-platform-http-starter/src/main/docs/platform-http-starter.adoc b/components-starter/camel-platform-http-starter/src/main/docs/platform-http-starter.adoc
new file mode 100644
index 0000000..cce85a4
--- /dev/null
+++ b/components-starter/camel-platform-http-starter/src/main/docs/platform-http-starter.adoc
@@ -0,0 +1,27 @@
+== platform-http - Spring Boot Auto-Configuration
+
+When using platform-http with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-platform-http-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.platform-http.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.platform-http.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.platform-http.enabled* | Whether to enable auto configuration of the platform-http component. This is enabled by default. |  | Boolean
+|===
+
diff --git a/components-starter/camel-printer-starter/src/main/docs/printer-starter.adoc b/components-starter/camel-printer-starter/src/main/docs/printer-starter.adoc
new file mode 100644
index 0000000..60fa1e0
--- /dev/null
+++ b/components-starter/camel-printer-starter/src/main/docs/printer-starter.adoc
@@ -0,0 +1,27 @@
+== printer - Spring Boot Auto-Configuration
+
+When using printer with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-printer-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 3 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.lpr.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.lpr.enabled* | Whether to enable auto configuration of the lpr component. This is enabled by default. |  | Boolean
+| *camel.component.lpr.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then c [...]
+|===
+
diff --git a/components-starter/camel-protobuf-starter/src/main/docs/protobuf-starter.adoc b/components-starter/camel-protobuf-starter/src/main/docs/protobuf-starter.adoc
new file mode 100644
index 0000000..e883e3b
--- /dev/null
+++ b/components-starter/camel-protobuf-starter/src/main/docs/protobuf-starter.adoc
@@ -0,0 +1,28 @@
+== protobuf - Spring Boot Auto-Configuration
+
+When using protobuf with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-protobuf-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.dataformat.protobuf.content-type-format* | Defines a content type format in which protobuf message will be serialized/deserialized from(to) the Java been. The format can either be native or json for either native protobuf or json fields representation. The default value is native. | native | String
+| *camel.dataformat.protobuf.content-type-header* | Whether the data format should set the Content-Type header with the type from the data format if the data format is capable of doing so. For example application/xml for data formats marshalling to XML, or application/json for data formats marshalling to JSon etc. | false | Boolean
+| *camel.dataformat.protobuf.enabled* | Whether to enable auto configuration of the protobuf data format. This is enabled by default. |  | Boolean
+| *camel.dataformat.protobuf.instance-class* | Name of class to use when unarmshalling |  | String
+|===
+
diff --git a/components-starter/camel-pubnub-starter/src/main/docs/pubnub-starter.adoc b/components-starter/camel-pubnub-starter/src/main/docs/pubnub-starter.adoc
new file mode 100644
index 0000000..7a3401f
--- /dev/null
+++ b/components-starter/camel-pubnub-starter/src/main/docs/pubnub-starter.adoc
@@ -0,0 +1,28 @@
+== pubnub - Spring Boot Auto-Configuration
+
+When using pubnub with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-pubnub-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 4 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.pubnub.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.pubnub.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.pubnub.enabled* | Whether to enable auto configuration of the pubnub component. This is enabled by default. |  | Boolean
+| *camel.component.pubnub.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+|===
+
diff --git a/components-starter/camel-pulsar-starter/src/main/docs/pulsar-starter.adoc b/components-starter/camel-pulsar-starter/src/main/docs/pulsar-starter.adoc
new file mode 100644
index 0000000..b360003
--- /dev/null
+++ b/components-starter/camel-pulsar-starter/src/main/docs/pulsar-starter.adoc
@@ -0,0 +1,32 @@
+== pulsar - Spring Boot Auto-Configuration
+
+When using pulsar with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
+----
+<dependency>
+  <groupId>org.apache.camel.springboot</groupId>
+  <artifactId>camel-pulsar-starter</artifactId>
+  <version>x.x.x</version>
+  <!-- use the same version as your Camel core version -->
+</dependency>
+----
+
+
+The component supports 8 options, which are listed below.
+
+
+
+[width="100%",cols="2,5,^1,2",options="header"]
+|===
+| Name | Description | Default | Type
+| *camel.component.pulsar.allow-manual-acknowledgement* | Whether to allow manual message acknowledgements. If this option is enabled, then messages are not immediately acknowledged after being consumed. Instead, an instance of PulsarMessageReceipt is stored as a header on the org.apache.camel.Exchange. Messages can then be acknowledged using PulsarMessageReceipt at any time before the ackTimeout occurs. | false | Boolean
+| *camel.component.pulsar.auto-configuration* | The pulsar auto configuration. The option is a org.apache.camel.component.pulsar.utils.AutoConfiguration type. |  | String
+| *camel.component.pulsar.basic-property-binding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | Boolean
+| *camel.component.pulsar.bridge-error-handler* | Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored. | false | Boolean
+| *camel.component.pulsar.enabled* | Whether to enable auto configuration of the pulsar component. This is enabled by default. |  | Boolean
+| *camel.component.pulsar.lazy-start-producer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed the [...]
+| *camel.component.pulsar.pulsar-client* | The pulsar client. The option is a org.apache.pulsar.client.api.PulsarClient type. |  | String
+| *camel.component.pulsar.pulsar-message-receipt-factory* | Provide a factory to create an alternate implementation of PulsarMessageReceipt. The option is a org.apache.camel.component.pulsar.PulsarMessageReceiptFactory type. |  | String
+|===
+
diff --git a/components-starter/camel-quartz-starter/src/main/docs/quartz-starter.adoc b/components-starter/camel-quartz-starter/src/main/docs/quartz-starter.adoc
new file mode 100644
index 0000000..3401462
--- /dev/null
+++ b/components-starter/camel-quartz-starter/src/main/docs/quartz-starter.adoc
@@ -0,0 +1,38 @@
+== quartz - Spring Boot Auto-Configuration
+
+When using quartz with Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
+
+[source,xml]
... 4134 lines suppressed ...