Regen
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/aws2-eventbridge.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/aws2-eventbridge.json
index fbe81e8..d12463b 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/aws2-eventbridge.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/aws2-eventbridge.json
@@ -26,7 +26,7 @@
     "eventbridgeClient": { "kind": "property", "displayName": "Eventbridge Client", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "software.amazon.awssdk.services.eventbridge.EventBridgeClient", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "To use a existing configured AWS Eventbridge as client" },
     "eventPatternFile": { "kind": "property", "displayName": "Event Pattern File", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "EventPattern File" },
     "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "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 creating and starting the producer may take a little time and prolong the total processing time of the processing." },
-    "operation": { "kind": "property", "displayName": "Operation", "group": "producer", "label": "", "required": true, "type": "object", "javaType": "org.apache.camel.component.aws2.eventbridge.EventbridgeOperations", "enum": [ "putRule", "putTargets", "removeTargets", "deleteRule", "enableRule", "disableRule", "describeRule", "listRules", "listTargetsByRule", "listRuleNamesByTarget" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": "putRule", "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "The operation to perform" },
+    "operation": { "kind": "property", "displayName": "Operation", "group": "producer", "label": "", "required": true, "type": "object", "javaType": "org.apache.camel.component.aws2.eventbridge.EventbridgeOperations", "enum": [ "putRule", "putTargets", "removeTargets", "deleteRule", "enableRule", "disableRule", "describeRule", "listRules", "listTargetsByRule", "listRuleNamesByTarget", "putEvent" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": "putRule", "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "The operation to perform" },
     "overrideEndpoint": { "kind": "property", "displayName": "Override Endpoint", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "Set the need for overidding the endpoint. This option needs to be used in combination with uriEndpointOverride option" },
     "pojoRequest": { "kind": "property", "displayName": "Pojo Request", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "If we want to use a POJO request as body or not" },
     "proxyHost": { "kind": "property", "displayName": "Proxy Host", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "To define a proxy host when instantiating the Eventbridge client" },
@@ -47,13 +47,16 @@
     "CamelAwsEventbridgeEventPattern": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The event pattern.", "constantName": "org.apache.camel.component.aws2.eventbridge.EventbridgeConstants#EVENT_PATTERN" },
     "CamelAwsEventbridgeTargets": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Collection<Target>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The targets to update or add to the rule.", "constantName": "org.apache.camel.component.aws2.eventbridge.EventbridgeConstants#TARGETS" },
     "CamelAwsEventbridgeTargetsIds": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Collection<String>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The IDs of the targets to remove from the rule.", "constantName": "org.apache.camel.component.aws2.eventbridge.EventbridgeConstants#TARGETS_IDS" },
-    "CamelAwsEventbridgeTargetArn": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The Amazon Resource Name (ARN) of the target resource.", "constantName": "org.apache.camel.component.aws2.eventbridge.EventbridgeConstants#TARGET_ARN" }
+    "CamelAwsEventbridgeTargetArn": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The Amazon Resource Name (ARN) of the target resource.", "constantName": "org.apache.camel.component.aws2.eventbridge.EventbridgeConstants#TARGET_ARN" },
+    "CamelAwsEventbridgeResourcesArn": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Comma separated list of Amazon Resource Names (ARN) of the resources related to Event", "constantName": "org.apache.camel.component.aws2.eventbridge.EventbridgeConstants#EVENT_RESOURCES_ARN" },
+    "CamelAwsEventbridgeSource": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The source related to Event", "constantName": "org.apache.camel.component.aws2.eventbridge.EventbridgeConstants#EVENT_SOURCE" },
+    "CamelAwsEventbridgeDetailType": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The detail type related to Event", "constantName": "org.apache.camel.component.aws2.eventbridge.EventbridgeConstants#EVENT_DETAIL_TYPE" }
   },
   "properties": {
     "eventbusNameOrArn": { "kind": "path", "displayName": "Eventbus Name Or Arn", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Event bus name or ARN" },
     "eventbridgeClient": { "kind": "parameter", "displayName": "Eventbridge Client", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "software.amazon.awssdk.services.eventbridge.EventBridgeClient", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "To use a existing configured AWS Eventbridge as client" },
     "eventPatternFile": { "kind": "parameter", "displayName": "Event Pattern File", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "EventPattern File" },
-    "operation": { "kind": "parameter", "displayName": "Operation", "group": "producer", "label": "", "required": true, "type": "object", "javaType": "org.apache.camel.component.aws2.eventbridge.EventbridgeOperations", "enum": [ "putRule", "putTargets", "removeTargets", "deleteRule", "enableRule", "disableRule", "describeRule", "listRules", "listTargetsByRule", "listRuleNamesByTarget" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": "putRule", "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "The operation to perform" },
+    "operation": { "kind": "parameter", "displayName": "Operation", "group": "producer", "label": "", "required": true, "type": "object", "javaType": "org.apache.camel.component.aws2.eventbridge.EventbridgeOperations", "enum": [ "putRule", "putTargets", "removeTargets", "deleteRule", "enableRule", "disableRule", "describeRule", "listRules", "listTargetsByRule", "listRuleNamesByTarget", "putEvent" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": "putRule", "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "The operation to perform" },
     "overrideEndpoint": { "kind": "parameter", "displayName": "Override Endpoint", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "Set the need for overidding the endpoint. This option needs to be used in combination with uriEndpointOverride option" },
     "pojoRequest": { "kind": "parameter", "displayName": "Pojo Request", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "If we want to use a POJO request as body or not" },
     "proxyHost": { "kind": "parameter", "displayName": "Proxy Host", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.eventbridge.EventbridgeConfiguration", "configurationField": "configuration", "description": "To define a proxy host when instantiating the Eventbridge client" },
diff --git a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/azure-eventhubs.json b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/azure-eventhubs.json
index da1edbb..9a65a3c 100644
--- a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/azure-eventhubs.json
+++ b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/azure-eventhubs.json
@@ -30,6 +30,8 @@
     "blobContainerName": { "kind": "property", "displayName": "Blob Container Name", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "In case you chose the default BlobCheckpointStore, this sets the blob container that shall be used by the BlobCheckpointStore to store the checkpoint offsets" },
     "blobStorageSharedKeyCredential": { "kind": "property", "displayName": "Blob Storage Shared Key Credential", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "com.azure.storage.common.StorageSharedKeyCredential", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "In case you chose the default BlobCheckpointStore, StorageSharedKeyCredential can be injected to create the azure client, this holds the important authentication information" },
     "bridgeErrorHandler": { "kind": "property", "displayName": "Bridge Error Handler", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "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." },
+    "checkpointBatchSize": { "kind": "property", "displayName": "Checkpoint Batch Size", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 500, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the batch size between each checkpoint updates. Works jointly with checkpointBatchTimeout" },
+    "checkpointBatchTimeout": { "kind": "property", "displayName": "Checkpoint Batch Timeout", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 5000, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the batch timeout between each checkpoint updates. Works jointly with checkpointBatchSize" },
     "checkpointStore": { "kind": "property", "displayName": "Checkpoint Store", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "com.azure.messaging.eventhubs.CheckpointStore", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "BlobCheckpointStore", "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the CheckpointStore the EventProcessorClient will use for storing partition ownership and checkpoint information. Users can, optionally, provide their own implementation of CheckpointStore which will store ownership and checkpoint information. By default it set to use com.azure.messaging.eventhubs.checkpointstore.blob.BlobCheckpointStore which stores all checkpoint offsets into Azure Blob Storage" },
     "consumerGroupName": { "kind": "property", "displayName": "Consumer Group Name", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "$Default", "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the name of the consumer group this consumer is associated with. Events are read in the context of this group. The name of the consumer group that is created by default is {link #DEFAULT_CONSUMER_GROUP_NAME $Default}." },
     "eventPosition": { "kind": "property", "displayName": "Event Position", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, com.azure.messaging.eventhubs.models.EventPosition>", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the map containing the event position to use for each partition if a checkpoint for the partition does not exist in CheckpointStore. This map is keyed off of the partition id. If there is no checkpoint in CheckpointStore and there is no entry in this map, the processing of the partition will start from {link EventPosition#latest() latest} position." },
@@ -50,7 +52,8 @@
     "CamelAzureEventHubsEnqueuedTime": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "Instant", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "It sets the instant, in UTC, of when the event was enqueued in the Event Hub partition. This is only present on a received EventData.", "constantName": "org.apache.camel.component.azure.eventhubs.EventHubsConstants#ENQUEUED_TIME" },
     "CamelAzureEventHubsSequenceNumber": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "It sets the sequence number assigned to the event when it was enqueued in the associated Event Hub partition. This is unique for every message received in the Event Hub partition. This is only present on a received EventData.", "constantName": "org.apache.camel.component.azure.eventhubs.EventHubsConstants#SEQUENCE_NUMBER" },
     "CamelAzureEventHubsMetadata": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "Map<String, Object>", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The set of free-form event properties which may be used for passing metadata associated with the event with the event body during Event Hubs operations.", "constantName": "org.apache.camel.component.azure.eventhubs.EventHubsConstants#METADATA" },
-    "CamelMessageTimestamp": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The timestamp of the message", "constantName": "org.apache.camel.component.azure.eventhubs.EventHubsConstants#MESSAGE_TIMESTAMP" }
+    "CamelMessageTimestamp": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The timestamp of the message", "constantName": "org.apache.camel.component.azure.eventhubs.EventHubsConstants#MESSAGE_TIMESTAMP" },
+    "CamelAzureEventHubsCheckpointUpdatedBy": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "It sets the reason for the checkpoint to have been updated. This is only present on a received EventData.", "constantName": "org.apache.camel.component.azure.eventhubs.EventHubsConstants#CHECKPOINT_UPDATED_BY" }
   },
   "properties": {
     "namespace": { "kind": "path", "displayName": "Namespace", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "EventHubs namespace created in Azure Portal" },
@@ -61,6 +64,8 @@
     "blobAccountName": { "kind": "parameter", "displayName": "Blob Account Name", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "In case you chose the default BlobCheckpointStore, this sets Azure account name to be used for authentication with azure blob services." },
     "blobContainerName": { "kind": "parameter", "displayName": "Blob Container Name", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "In case you chose the default BlobCheckpointStore, this sets the blob container that shall be used by the BlobCheckpointStore to store the checkpoint offsets" },
     "blobStorageSharedKeyCredential": { "kind": "parameter", "displayName": "Blob Storage Shared Key Credential", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "com.azure.storage.common.StorageSharedKeyCredential", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "In case you chose the default BlobCheckpointStore, StorageSharedKeyCredential can be injected to create the azure client, this holds the important authentication information" },
+    "checkpointBatchSize": { "kind": "parameter", "displayName": "Checkpoint Batch Size", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 500, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the batch size between each checkpoint updates. Works jointly with checkpointBatchTimeout" },
+    "checkpointBatchTimeout": { "kind": "parameter", "displayName": "Checkpoint Batch Timeout", "group": "consumer", "label": "consumer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 5000, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the batch timeout between each checkpoint updates. Works jointly with checkpointBatchSize" },
     "checkpointStore": { "kind": "parameter", "displayName": "Checkpoint Store", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "com.azure.messaging.eventhubs.CheckpointStore", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "BlobCheckpointStore", "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the CheckpointStore the EventProcessorClient will use for storing partition ownership and checkpoint information. Users can, optionally, provide their own implementation of CheckpointStore which will store ownership and checkpoint information. By default it set to use com.azure.messaging.eventhubs.checkpointstore.blob.BlobCheckpointStore which stores all checkpoint offsets into Azure Blob Storage" },
     "consumerGroupName": { "kind": "parameter", "displayName": "Consumer Group Name", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "$Default", "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the name of the consumer group this consumer is associated with. Events are read in the context of this group. The name of the consumer group that is created by default is {link #DEFAULT_CONSUMER_GROUP_NAME $Default}." },
     "eventPosition": { "kind": "parameter", "displayName": "Event Position", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "java.util.Map<java.lang.String, com.azure.messaging.eventhubs.models.EventPosition>", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.azure.eventhubs.EventHubsConfiguration", "configurationField": "configuration", "description": "Sets the map containing the event position to use for each partition if a checkpoint for the partition does not exist in CheckpointStore. This map is keyed off of the partition id. If there is no checkpoint in CheckpointStore and there is no entry in this map, the processing of the partition will start from {link EventPosition#latest() latest} position." },
diff --git a/components-starter/camel-azure-eventhubs-starter/src/main/docs/azure-eventhubs.json b/components-starter/camel-azure-eventhubs-starter/src/main/docs/azure-eventhubs.json
index 360defd..3b6059d 100644
--- a/components-starter/camel-azure-eventhubs-starter/src/main/docs/azure-eventhubs.json
+++ b/components-starter/camel-azure-eventhubs-starter/src/main/docs/azure-eventhubs.json
@@ -64,6 +64,20 @@
       "defaultValue": false
     },
     {
+      "name": "camel.component.azure-eventhubs.checkpoint-batch-size",
+      "type": "java.lang.Integer",
+      "description": "Sets the batch size between each checkpoint updates. Works jointly with checkpointBatchTimeout",
+      "sourceType": "org.apache.camel.component.azure.eventhubs.springboot.EventHubsComponentConfiguration",
+      "defaultValue": 500
+    },
+    {
+      "name": "camel.component.azure-eventhubs.checkpoint-batch-timeout",
+      "type": "java.lang.Integer",
+      "description": "Sets the batch timeout between each checkpoint updates. Works jointly with checkpointBatchSize",
+      "sourceType": "org.apache.camel.component.azure.eventhubs.springboot.EventHubsComponentConfiguration",
+      "defaultValue": 5000
+    },
+    {
       "name": "camel.component.azure-eventhubs.checkpoint-store",
       "type": "com.azure.messaging.eventhubs.CheckpointStore",
       "description": "Sets the CheckpointStore the EventProcessorClient will use for storing partition ownership and checkpoint information. Users can, optionally, provide their own implementation of CheckpointStore which will store ownership and checkpoint information. By default it set to use com.azure.messaging.eventhubs.checkpointstore.blob.BlobCheckpointStore which stores all checkpoint offsets into Azure Blob Storage. The option is a com.azure.messaging.eventhubs.CheckpointStore type.",
diff --git a/components-starter/camel-azure-eventhubs-starter/src/main/java/org/apache/camel/component/azure/eventhubs/springboot/EventHubsComponentConfiguration.java b/components-starter/camel-azure-eventhubs-starter/src/main/java/org/apache/camel/component/azure/eventhubs/springboot/EventHubsComponentConfiguration.java
index 5ee8ea2..f18492d 100644
--- a/components-starter/camel-azure-eventhubs-starter/src/main/java/org/apache/camel/component/azure/eventhubs/springboot/EventHubsComponentConfiguration.java
+++ b/components-starter/camel-azure-eventhubs-starter/src/main/java/org/apache/camel/component/azure/eventhubs/springboot/EventHubsComponentConfiguration.java
@@ -95,6 +95,16 @@
      */
     private Boolean bridgeErrorHandler = false;
     /**
+     * Sets the batch size between each checkpoint updates. Works jointly with
+     * checkpointBatchTimeout
+     */
+    private Integer checkpointBatchSize = 500;
+    /**
+     * Sets the batch timeout between each checkpoint updates. Works jointly
+     * with checkpointBatchSize
+     */
+    private Integer checkpointBatchTimeout = 5000;
+    /**
      * Sets the CheckpointStore the EventProcessorClient will use for storing
      * partition ownership and checkpoint information. Users can, optionally,
      * provide their own implementation of CheckpointStore which will store
@@ -258,6 +268,22 @@
         this.bridgeErrorHandler = bridgeErrorHandler;
     }
 
+    public Integer getCheckpointBatchSize() {
+        return checkpointBatchSize;
+    }
+
+    public void setCheckpointBatchSize(Integer checkpointBatchSize) {
+        this.checkpointBatchSize = checkpointBatchSize;
+    }
+
+    public Integer getCheckpointBatchTimeout() {
+        return checkpointBatchTimeout;
+    }
+
+    public void setCheckpointBatchTimeout(Integer checkpointBatchTimeout) {
+        this.checkpointBatchTimeout = checkpointBatchTimeout;
+    }
+
     public CheckpointStore getCheckpointStore() {
         return checkpointStore;
     }