diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-s3-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-s3-component.adoc
index ceddb8e..5141e8f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-s3-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-s3-component.adoc
@@ -278,13 +278,12 @@
 |`CamelAwsS3Acl` |`software.amazon.awssdk.services.s3.model.BucketCannedACL` |A well constructed Amazon S3 Access Control List object.
 see `software.amazon.awssdk.services.s3.model.BucketCannedACL` for more details
 
-|`CamelAwsS3Headers` |`Map<String,String>` |Support to get or set custom objectMetadata headers.
-
 |`CamelAwsS3ServerSideEncryption` |String |Sets the server-side encryption algorithm when encrypting
 the object using AWS-managed keys. For example use AES256.
 
 |`CamelAwsS3VersionId` |`String` |The version Id of the object to be stored or returned from the current operation
-|`CamelAwsS3Metadata` |`Map<String, String>` |A map of metadata stored with the object in S3.
+|`CamelAwsS3Metadata` |`Map<String, String>` |A map of metadata to be stored with the object in S3. More details about
+metadata https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html[here].
 |=======================================================================
 
 === Message headers set by the S3 producer
@@ -346,6 +345,8 @@
 
 |`CamelAwsS3ServerSideEncryption` |String |The server-side encryption algorithm when encrypting the
 object using AWS-managed keys.
+|`CamelAwsS3Metadata` |`Map<String, String>` |A map of metadata stored with the object in S3. More details about
+metadata https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html[here].
 |=======================================================================
 
 === S3 Producer operations
diff --git a/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/integration/S3UploadWithUserMetadataIT.java b/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/integration/S3UploadWithUserMetadataIT.java
index e51884a..6968c4c 100644
--- a/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/integration/S3UploadWithUserMetadataIT.java
+++ b/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/integration/S3UploadWithUserMetadataIT.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.aws2.s3.integration;
 
+import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.EndpointInject;
@@ -46,8 +47,13 @@
         result.expectedMessageCount(1);
 
         template.send("direct:putObject", exchange -> {
+            Map<String, String> metadataMap = new HashMap<String, String>() {
+                {
+                    put("user-metadata-example", "MetadataFromCamel");
+                }
+            };
             exchange.getIn().setHeader(AWS2S3Constants.KEY, "camel-content-type.txt");
-            exchange.getIn().setHeader(AWS2S3Constants.METADATA, Map.of("user-metadata-example", "MetadataFromCamel"));
+            exchange.getIn().setHeader(AWS2S3Constants.METADATA, metadataMap);
             exchange.getIn().setBody("Camel rocks!");
         });
 
diff --git a/docs/components/modules/ROOT/pages/aws2-s3-component.adoc b/docs/components/modules/ROOT/pages/aws2-s3-component.adoc
index cce0987..3788705 100644
--- a/docs/components/modules/ROOT/pages/aws2-s3-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws2-s3-component.adoc
@@ -280,13 +280,12 @@
 |`CamelAwsS3Acl` |`software.amazon.awssdk.services.s3.model.BucketCannedACL` |A well constructed Amazon S3 Access Control List object.
 see `software.amazon.awssdk.services.s3.model.BucketCannedACL` for more details
 
-|`CamelAwsS3Headers` |`Map<String,String>` |Support to get or set custom objectMetadata headers.
-
 |`CamelAwsS3ServerSideEncryption` |String |Sets the server-side encryption algorithm when encrypting
 the object using AWS-managed keys. For example use AES256.
 
 |`CamelAwsS3VersionId` |`String` |The version Id of the object to be stored or returned from the current operation
-|`CamelAwsS3Metadata` |`Map<String, String>` |A map of metadata stored with the object in S3.
+|`CamelAwsS3Metadata` |`Map<String, String>` |A map of metadata to be stored with the object in S3. More details about
+metadata https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html[here].
 |=======================================================================
 
 === Message headers set by the S3 producer
@@ -348,6 +347,8 @@
 
 |`CamelAwsS3ServerSideEncryption` |String |The server-side encryption algorithm when encrypting the
 object using AWS-managed keys.
+|`CamelAwsS3Metadata` |`Map<String, String>` |A map of metadata stored with the object in S3. More details about
+metadata https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html[here].
 |=======================================================================
 
 === S3 Producer operations
