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/09/17 17:11:36 UTC

[camel] branch api updated: CAMEL-15478: Whether an option is optional or not.

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

davsclaus pushed a commit to branch api
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/api by this push:
     new 08ffed2  CAMEL-15478: Whether an option is optional or not.
08ffed2 is described below

commit 08ffed27d866c9a9b170720050406599c90eed61
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Sep 17 19:11:04 2020 +0200

    CAMEL-15478: Whether an option is optional or not.
---
 .../as2/AS2ClientManagerEndpointConfiguration.java |  34 +-
 .../as2/AS2ServerManagerEndpointConfiguration.java |   2 +-
 .../org/apache/camel/component/as2/as2.json        |   4 +-
 .../src/main/docs/as2-component.adoc               |  40 +-
 components/camel-box/camel-box-component/pom.xml   |   1 +
 ...CollaborationsManagerEndpointConfiguration.java |  12 +-
 .../BoxCommentsManagerEndpointConfiguration.java   |   6 +-
 .../BoxEventLogsManagerEndpointConfiguration.java  |   8 +-
 .../box/BoxEventsManagerEndpointConfiguration.java |   2 +-
 .../box/BoxFilesManagerEndpointConfiguration.java  |  60 +-
 .../BoxFoldersManagerEndpointConfiguration.java    |  28 +-
 .../box/BoxGroupsManagerEndpointConfiguration.java |  24 +-
 .../box/BoxSearchManagerEndpointConfiguration.java |   4 +-
 .../box/BoxTasksManagerEndpointConfiguration.java  |  16 +-
 .../box/BoxUsersManagerEndpointConfiguration.java  |  24 +-
 .../component/box/internal/BoxApiCollection.java   |   2 +-
 .../org/apache/camel/component/box/box.json        |  20 +-
 .../src/main/docs/box-component.adoc               | 987 ++++-----------------
 .../AddressGatewayEndpointConfiguration.java       |   6 +-
 .../ClientTokenGatewayEndpointConfiguration.java   |   2 +-
 ...rdVerificationGatewayEndpointConfiguration.java |   6 +-
 .../CustomerGatewayEndpointConfiguration.java      |   8 +-
 .../DisputeGatewayEndpointConfiguration.java       |  16 +-
 ...DocumentUploadGatewayEndpointConfiguration.java |   2 +-
 ...erchantAccountGatewayEndpointConfiguration.java |   8 +-
 .../PaymentMethodGatewayEndpointConfiguration.java |   8 +-
 ...entMethodNonceGatewayEndpointConfiguration.java |   6 +-
 .../ReportGatewayEndpointConfiguration.java        |   2 +-
 ...ntBatchSummaryGatewayEndpointConfiguration.java |   4 +-
 .../SubscriptionGatewayEndpointConfiguration.java  |  14 +-
 .../TransactionGatewayEndpointConfiguration.java   |  12 +-
 ...okNotificationGatewayEndpointConfiguration.java |   6 +-
 .../camel/component/braintree/braintree.json       |  28 +-
 .../src/main/docs/braintree-component.adoc         | 206 ++---
 .../FhirCapabilitiesEndpointConfiguration.java     |   4 +-
 .../fhir/FhirCreateEndpointConfiguration.java      |  10 +-
 .../fhir/FhirDeleteEndpointConfiguration.java      |  12 +-
 .../fhir/FhirHistoryEndpointConfiguration.java     |  14 +-
 .../fhir/FhirLoadPageEndpointConfiguration.java    |   8 +-
 .../fhir/FhirMetaEndpointConfiguration.java        |  10 +-
 .../fhir/FhirOperationEndpointConfiguration.java   |  24 +-
 .../fhir/FhirPatchEndpointConfiguration.java       |  12 +-
 .../fhir/FhirReadEndpointConfiguration.java        |  26 +-
 .../fhir/FhirSearchEndpointConfiguration.java      |   4 +-
 .../fhir/FhirTransactionEndpointConfiguration.java |   8 +-
 .../fhir/FhirUpdateEndpointConfiguration.java      |  14 +-
 .../fhir/FhirValidateEndpointConfiguration.java    |   6 +-
 .../org/apache/camel/component/fhir/fhir.json      |  26 +-
 .../src/main/docs/fhir-component.adoc              | 296 +++---
 .../calendar/CalendarAclEndpointConfiguration.java |   8 +-
 .../CalendarCalendarListEndpointConfiguration.java |   6 +-
 .../CalendarCalendarsEndpointConfiguration.java    |   4 +-
 .../CalendarChannelsEndpointConfiguration.java     |   2 +-
 .../CalendarEventsEndpointConfiguration.java       |  12 +-
 .../CalendarFreebusyEndpointConfiguration.java     |   2 +-
 .../CalendarSettingsEndpointConfiguration.java     |   4 +-
 .../component/google/calendar/google-calendar.json |  14 +-
 .../calendar/stream/google-calendar-stream.json    |  14 +-
 .../src/main/docs/google-calendar-component.adoc   | 132 ++-
 .../docs/google-calendar-stream-component.adoc     | 132 ++-
 .../drive/DriveAppsEndpointConfiguration.java      |   2 +-
 .../drive/DriveChangesEndpointConfiguration.java   |   4 +-
 .../drive/DriveChannelsEndpointConfiguration.java  |   2 +-
 .../drive/DriveChildrenEndpointConfiguration.java  |   6 +-
 .../drive/DriveCommentsEndpointConfiguration.java  |   6 +-
 .../drive/DriveFilesEndpointConfiguration.java     |  10 +-
 .../drive/DriveParentsEndpointConfiguration.java   |   6 +-
 .../DrivePermissionsEndpointConfiguration.java     |   8 +-
 .../DrivePropertiesEndpointConfiguration.java      |   6 +-
 .../drive/DriveRealtimeEndpointConfiguration.java  |   4 +-
 .../drive/DriveRepliesEndpointConfiguration.java   |   8 +-
 .../drive/DriveRevisionsEndpointConfiguration.java |   6 +-
 .../camel/component/google/drive/google-drive.json |  24 +-
 .../src/main/docs/google-drive-component.adoc      | 290 +++---
 .../GmailUsersDraftsEndpointConfiguration.java     |   8 +-
 .../mail/GmailUsersEndpointConfiguration.java      |   4 +-
 .../GmailUsersHistoryEndpointConfiguration.java    |   2 +-
 .../GmailUsersLabelsEndpointConfiguration.java     |   6 +-
 ...rsMessagesAttachmentsEndpointConfiguration.java |   6 +-
 .../GmailUsersMessagesEndpointConfiguration.java   |  14 +-
 .../GmailUsersThreadsEndpointConfiguration.java    |   6 +-
 .../camel/component/google/mail/google-mail.json   |  14 +-
 .../google/mail/stream/google-mail-stream.json     |  14 +-
 .../src/main/docs/google-mail-component.adoc       | 188 ++--
 .../main/docs/google-mail-stream-component.adoc    | 188 ++--
 .../SheetsSpreadsheetsEndpointConfiguration.java   |   8 +-
 ...etsSpreadsheetsValuesEndpointConfiguration.java |  18 +-
 .../component/google/sheets/google-sheets.json     |   4 +-
 .../google/sheets/stream/google-sheets-stream.json |   4 +-
 .../src/main/docs/google-sheets-component.adoc     |  68 +-
 .../main/docs/google-sheets-stream-component.adoc  |  68 +-
 .../olingo2/Olingo2AppEndpointConfiguration.java   |  14 +-
 .../apache/camel/component/olingo2/olingo2.json    |   2 +-
 .../src/main/docs/olingo2-component.adoc           |  76 +-
 .../olingo4/Olingo4AppEndpointConfiguration.java   |  14 +-
 .../apache/camel/component/olingo4/olingo4.json    |   2 +-
 .../src/main/docs/olingo4-component.adoc           |  86 +-
 .../twilio/AccountEndpointConfiguration.java       |   2 +-
 ...sDependentPhoneNumberEndpointConfiguration.java |   4 +-
 .../twilio/AddressEndpointConfiguration.java       |  16 +-
 .../twilio/ApplicationEndpointConfiguration.java   |   4 +-
 ...blePhoneNumberCountryEndpointConfiguration.java |   4 +-
 ...oneNumberCountryLocalEndpointConfiguration.java |   4 +-
 ...neNumberCountryMobileEndpointConfiguration.java |   4 +-
 ...NumberCountryTollFreeEndpointConfiguration.java |   4 +-
 .../twilio/CallEndpointConfiguration.java          |  14 +-
 .../twilio/CallFeedbackEndpointConfiguration.java  |   6 +-
 .../CallFeedbackSummaryEndpointConfiguration.java  |   8 +-
 .../CallNotificationEndpointConfiguration.java     |   6 +-
 .../twilio/CallRecordingEndpointConfiguration.java |   8 +-
 .../twilio/ConferenceEndpointConfiguration.java    |   4 +-
 ...ConferenceParticipantEndpointConfiguration.java |  10 +-
 .../twilio/ConnectAppEndpointConfiguration.java    |   4 +-
 .../IncomingPhoneNumberEndpointConfiguration.java  |   8 +-
 ...omingPhoneNumberLocalEndpointConfiguration.java |   4 +-
 ...mingPhoneNumberMobileEndpointConfiguration.java |   4 +-
 ...ngPhoneNumberTollFreeEndpointConfiguration.java |   4 +-
 .../component/twilio/KeyEndpointConfiguration.java |   4 +-
 .../twilio/MessageEndpointConfiguration.java       |  14 +-
 .../MessageFeedbackEndpointConfiguration.java      |   4 +-
 .../twilio/MessageMediaEndpointConfiguration.java  |   6 +-
 .../twilio/NewKeyEndpointConfiguration.java        |   2 +-
 .../twilio/NewSigningKeyEndpointConfiguration.java |   2 +-
 .../twilio/NotificationEndpointConfiguration.java  |   4 +-
 .../OutgoingCallerIdEndpointConfiguration.java     |   4 +-
 .../twilio/QueueEndpointConfiguration.java         |   6 +-
 .../twilio/QueueMemberEndpointConfiguration.java   |   8 +-
 .../RecordingAddOnResultEndpointConfiguration.java |   6 +-
 ...ingAddOnResultPayloadEndpointConfiguration.java |   8 +-
 .../twilio/RecordingEndpointConfiguration.java     |   4 +-
 ...ecordingTranscriptionEndpointConfiguration.java |   6 +-
 .../twilio/ShortCodeEndpointConfiguration.java     |   4 +-
 .../twilio/SigningKeyEndpointConfiguration.java    |   4 +-
 .../twilio/SipCredentialEndpointConfiguration.java |  10 +-
 .../SipCredentialListEndpointConfiguration.java    |   6 +-
 ...CredentialListMappingEndpointConfiguration.java |   8 +-
 .../twilio/SipDomainEndpointConfiguration.java     |   6 +-
 ...essControlListMappingEndpointConfiguration.java |   8 +-
 ...ipIpAccessControlListEndpointConfiguration.java |   6 +-
 ...sControlListIpAddressEndpointConfiguration.java |  10 +-
 .../twilio/TokenEndpointConfiguration.java         |   2 +-
 .../twilio/TranscriptionEndpointConfiguration.java |   4 +-
 .../UsageRecordAllTimeEndpointConfiguration.java   |   2 +-
 .../UsageRecordDailyEndpointConfiguration.java     |   2 +-
 .../twilio/UsageRecordEndpointConfiguration.java   |   2 +-
 .../UsageRecordLastMonthEndpointConfiguration.java |   2 +-
 .../UsageRecordMonthlyEndpointConfiguration.java   |   2 +-
 .../UsageRecordThisMonthEndpointConfiguration.java |   2 +-
 .../UsageRecordTodayEndpointConfiguration.java     |   2 +-
 .../UsageRecordYearlyEndpointConfiguration.java    |   2 +-
 .../UsageRecordYesterdayEndpointConfiguration.java |   2 +-
 .../twilio/UsageTriggerEndpointConfiguration.java  |  10 +-
 .../ValidationRequestEndpointConfiguration.java    |   4 +-
 .../org/apache/camel/component/twilio/twilio.json  | 112 +--
 .../src/main/docs/twilio-component.adoc            | 796 +++++++----------
 .../zendesk/ZendeskEndpointConfiguration.java      | 230 ++---
 .../apache/camel/component/zendesk/zendesk.json    |   2 +-
 .../src/main/docs/zendesk-component.adoc           | 734 ++++++++-------
 .../java/org/apache/camel/spi/ApiParam.java        |   5 +
 .../apache/camel/tooling/model/ComponentModel.java |  10 +
 .../org/apache/camel/tooling/model/JsonMapper.java |   4 +
 .../maven/AbstractApiMethodGeneratorMojo.java      |  19 +
 .../camel/maven/ApiComponentGeneratorMojo.java     |   1 +
 .../src/main/resources/api-endpoint-config.vm      |   2 +-
 .../packaging/EndpointSchemaGeneratorMojo.java     |   1 +
 .../src/main/resources/endpoint-options.mvel       |   4 +-
 .../main/java/org/apache/camel/spi/ApiParam.java   |   5 +
 167 files changed, 2484 insertions(+), 3349 deletions(-)

diff --git a/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2ClientManagerEndpointConfiguration.java b/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2ClientManagerEndpointConfiguration.java
index a922245..bd0760d 100644
--- a/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2ClientManagerEndpointConfiguration.java
+++ b/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2ClientManagerEndpointConfiguration.java
@@ -20,55 +20,55 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AS2ClientManagerEndpointConfiguration extends AS2Configuration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="AS2 name of sender")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "send", description="AS2 name of sender")})
     private String as2From;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The structure of AS2 to send; see AS2MessageStructure")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "send", description="The structure of AS2 to send; see AS2MessageStructure")})
     private org.apache.camel.component.as2.api.AS2MessageStructure as2MessageStructure;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="AS2 name of recipient")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "send", description="AS2 name of recipient")})
     private String as2To;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The algorithm used to compress the message or null if sending EDI message uncompressed")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="The algorithm used to compress the message or null if sending EDI message uncompressed")})
     private org.apache.camel.component.as2.api.AS2CompressionAlgorithm compressionAlgorithm;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="An RFC2822 address to request a receipt or null if no receipt requested")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="An RFC2822 address to request a receipt or null if no receipt requested")})
     private String dispositionNotificationTo;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="EDI message to transport")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "send", description="EDI message to transport")})
     private String ediMessage;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The content typw of EDI message")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "send", description="The content typw of EDI message")})
     private org.apache.http.entity.ContentType ediMessageContentType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The transfer encoding used to transport EDI message")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="The transfer encoding used to transport EDI message")})
     private String ediMessageTransferEncoding;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The algorithm used to encrypt the message or null if sending EDI message unencrypted")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="The algorithm used to encrypt the message or null if sending EDI message unencrypted")})
     private org.apache.camel.component.as2.api.AS2EncryptionAlgorithm encryptingAlgorithm;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The chain of certificates used to encrypt the message or null if sending EDI message unencrypted")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="The chain of certificates used to encrypt the message or null if sending EDI message unencrypted")})
     private java.security.cert.Certificate[] encryptingCertificateChain;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="RFC2822 address of sender")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "send", description="RFC2822 address of sender")})
     private String from;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="Resource location to deliver message")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "send", description="Resource location to deliver message")})
     private String requestUri;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The senders list of signing algorithms for signing receipt, in preferred order, or null if requesting an unsigned receipt.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="The senders list of signing algorithms for signing receipt, in preferred order, or null if requesting an unsigned receipt.")})
     private String[] signedReceiptMicAlgorithms;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The algorithm used to sign the message or null if sending EDI message unsigned")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="The algorithm used to sign the message or null if sending EDI message unsigned")})
     private org.apache.camel.component.as2.api.AS2SignatureAlgorithm signingAlgorithm;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The chain of certificates used to sign the message or null if sending EDI message unsigned")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="The chain of certificates used to sign the message or null if sending EDI message unsigned")})
     private java.security.cert.Certificate[] signingCertificateChain;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="The private key used to sign EDI message")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "send", description="The private key used to sign EDI message")})
     private java.security.PrivateKey signingPrivateKey;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "send", description="Message subject")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "send", description="Message subject")})
     private String subject;
 
     public String getAs2From() {
diff --git a/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2ServerManagerEndpointConfiguration.java b/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2ServerManagerEndpointConfiguration.java
index 498a106..54d7f92 100644
--- a/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2ServerManagerEndpointConfiguration.java
+++ b/components/camel-as2/camel-as2-component/src/generated/java/org/apache/camel/component/as2/AS2ServerManagerEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AS2ServerManagerEndpointConfiguration extends AS2Configuration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "listen")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "listen")})
     private String requestUriPattern;
 
     public String getRequestUriPattern() {
diff --git a/components/camel-as2/camel-as2-component/src/generated/resources/org/apache/camel/component/as2/as2.json b/components/camel-as2/camel-as2-component/src/generated/resources/org/apache/camel/component/as2/as2.json
index bfcca6c..99bd378 100644
--- a/components/camel-as2/camel-as2-component/src/generated/resources/org/apache/camel/component/as2/as2.json
+++ b/components/camel-as2/camel-as2-component/src/generated/resources/org/apache/camel/component/as2/as2.json
@@ -86,7 +86,7 @@
     "server": { "methods": { "listen": { "description": "", "signatures": [ "void listen(String requestUriPattern, org.apache.http.protocol.HttpRequestHandler handler)" ] } } }
   },
   "apiProperties": {
-    "client": { "methods": { "send": { "properties": { "as2From": { "kind": "parameter", "displayName": "As2 From", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "AS2 name of sender" }, "as2MessageStructure": { "kind": "parameter", "displayName": "As2 Message Structure", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.as2 [...]
-    "server": { "methods": { "listen": { "properties": { "requestUriPattern": { "kind": "parameter", "displayName": "Request Uri Pattern", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } }
+    "client": { "methods": { "send": { "properties": { "as2From": { "kind": "parameter", "displayName": "As2 From", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "AS2 name of sender", "optional": false }, "as2MessageStructure": { "kind": "parameter", "displayName": "As2 Message Structure", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache. [...]
+    "server": { "methods": { "listen": { "properties": { "requestUriPattern": { "kind": "parameter", "displayName": "Request Uri Pattern", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "", "optional": false } } } } }
   }
 }
diff --git a/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc b/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
index 2e49953..310363a 100644
--- a/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
+++ b/components/camel-as2/camel-as2-component/src/main/docs/as2-component.adoc
@@ -188,30 +188,28 @@ The client API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| send | *as2From* | AS2 name of sender | String
-| send | *as2MessageStructure* | The structure of AS2 to send; see AS2MessageStructure | AS2MessageStructure
-| send | *as2To* | AS2 name of recipient | String
-| send | *compressionAlgorithm* | The algorithm used to compress the message or null if sending EDI message uncompressed | AS2CompressionAlgorithm
-| send | *dispositionNotificationTo* | An RFC2822 address to request a receipt or null if no receipt requested | String
-| send | *ediMessage* | EDI message to transport | String
-| send | *ediMessageContentType* | The content typw of EDI message | ContentType
-| send | *ediMessageTransferEncoding* | The transfer encoding used to transport EDI message | String
-| send | *encryptingAlgorithm* | The algorithm used to encrypt the message or null if sending EDI message unencrypted | AS2EncryptionAlgorithm
-| send | *encryptingCertificateChain* | The chain of certificates used to encrypt the message or null if sending EDI message unencrypted | Certificate[]
-| send | *from* | RFC2822 address of sender | String
-| send | *requestUri* | Resource location to deliver message | String
-| send | *signedReceiptMicAlgorithms* | The senders list of signing algorithms for signing receipt, in preferred order, or null if requesting an unsigned receipt. | String[]
-| send | *signingAlgorithm* | The algorithm used to sign the message or null if sending EDI message unsigned | AS2SignatureAlgorithm
-| send | *signingCertificateChain* | The chain of certificates used to sign the message or null if sending EDI message unsigned | Certificate[]
-| send | *signingPrivateKey* | The private key used to sign EDI message | PrivateKey
-| send | *subject* | Message subject | String
+| send | *as2From* |  AS2 name of sender | String
+| send | *as2MessageStructure* |  The structure of AS2 to send; see AS2MessageStructure | AS2MessageStructure
+| send | *as2To* |  AS2 name of recipient | String
+| send | *compressionAlgorithm* | *Optional*  The algorithm used to compress the message or null if sending EDI message uncompressed | AS2CompressionAlgorithm
+| send | *dispositionNotificationTo* | *Optional*  An RFC2822 address to request a receipt or null if no receipt requested | String
+| send | *ediMessage* |  EDI message to transport | String
+| send | *ediMessageContentType* |  The content typw of EDI message | ContentType
+| send | *ediMessageTransferEncoding* | *Optional*  The transfer encoding used to transport EDI message | String
+| send | *encryptingAlgorithm* | *Optional*  The algorithm used to encrypt the message or null if sending EDI message unencrypted | AS2EncryptionAlgorithm
+| send | *encryptingCertificateChain* | *Optional*  The chain of certificates used to encrypt the message or null if sending EDI message unencrypted | Certificate[]
+| send | *from* |  RFC2822 address of sender | String
+| send | *requestUri* |  Resource location to deliver message | String
+| send | *signedReceiptMicAlgorithms* | *Optional*  The senders list of signing algorithms for signing receipt, in preferred order, or null if requesting an unsigned receipt. | String[]
+| send | *signingAlgorithm* | *Optional*  The algorithm used to sign the message or null if sending EDI message unsigned | AS2SignatureAlgorithm
+| send | *signingCertificateChain* | *Optional*  The chain of certificates used to sign the message or null if sending EDI message unsigned | Certificate[]
+| send | *signingPrivateKey* | *Optional*  The private key used to sign EDI message | PrivateKey
+| send | *subject* |  Message subject | String
 |===
 
 In addition to the parameters above, the client API can also use from the 49 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelAs2.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -251,14 +249,12 @@ The server API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| listen | *requestUriPattern* |  | String
+| listen | *requestUriPattern* |   | String
 |===
 
 In addition to the parameters above, the server API can also use from the 49 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelAs2.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
diff --git a/components/camel-box/camel-box-component/pom.xml b/components/camel-box/camel-box-component/pom.xml
index 2fbdf18..ca674ec 100644
--- a/components/camel-box/camel-box-component/pom.xml
+++ b/components/camel-box/camel-box-component/pom.xml
@@ -362,6 +362,7 @@
                                         <nullableOption>offset</nullableOption>
                                         <nullableOption>limit</nullableOption>
                                         <nullableOption>fields</nullableOption>
+                                        <nullableOption>newName</nullableOption>
                                     </nullableOptions>
                                 </api>
                                 <api>
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCollaborationsManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCollaborationsManagerEndpointConfiguration.java
index 52095f8..6964444 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCollaborationsManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCollaborationsManagerEndpointConfiguration.java
@@ -20,22 +20,22 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxCollaborationsManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteCollaboration", description="The id of comment to change"), @ApiMethod(methodName = "getCollaborationInfo", description="The id of collaboration"), @ApiMethod(methodName = "updateCollaborationInfo", description="The id of collaboration")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteCollaboration", description="The id of comment to change"), @ApiMethod(methodName = "getCollaborationInfo", description="The id of collaboration"), @ApiMethod(methodName = "updateCollaborationInfo", description="The id of collaboration")})
     private String collaborationId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFolderCollaboration", description="The collaborator to add")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFolderCollaboration", description="The collaborator to add")})
     private com.box.sdk.BoxCollaborator collaborator;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFolderCollaborationByEmail", description="The email address of the collaborator to add")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFolderCollaborationByEmail", description="The email address of the collaborator to add")})
     private String email;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFolderCollaboration", description="The id of folder to add collaboration to"), @ApiMethod(methodName = "addFolderCollaborationByEmail", description="The id of folder to add collaboration to"), @ApiMethod(methodName = "getFolderCollaborations", description="The id of folder to get collaborations information on")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFolderCollaboration", description="The id of folder to add collaboration to"), @ApiMethod(methodName = "addFolderCollaborationByEmail", description="The id of folder to add collaboration to"), @ApiMethod(methodName = "getFolderCollaborations", description="The id of folder to get collaborations information on")})
     private String folderId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateCollaborationInfo")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateCollaborationInfo")})
     private com.box.sdk.BoxCollaboration.Info info;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFolderCollaboration", description="The role of the collaborator"), @ApiMethod(methodName = "addFolderCollaborationByEmail", description="The role of the collaborator")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFolderCollaboration", description="The role of the collaborator"), @ApiMethod(methodName = "addFolderCollaborationByEmail", description="The role of the collaborator")})
     private com.box.sdk.BoxCollaboration.Role role;
 
     public String getCollaborationId() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCommentsManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCommentsManagerEndpointConfiguration.java
index 7954be6..4a6553f 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCommentsManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxCommentsManagerEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxCommentsManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "changeCommentMessage", description="The id of comment to change"), @ApiMethod(methodName = "deleteComment", description="The id of comment to delete"), @ApiMethod(methodName = "getCommentInfo", description="The id of comment"), @ApiMethod(methodName = "replyToComment", description="The id of comment to reply to")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "changeCommentMessage", description="The id of comment to change"), @ApiMethod(methodName = "deleteComment", description="The id of comment to delete"), @ApiMethod(methodName = "getCommentInfo", description="The id of comment"), @ApiMethod(methodName = "replyToComment", description="The id of comment to reply to")})
     private String commentId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileComment", description="The id of file"), @ApiMethod(methodName = "getFileComments", description="The id of file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFileComment", description="The id of file"), @ApiMethod(methodName = "getFileComments", description="The id of file")})
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileComment", description="The comment's message"), @ApiMethod(methodName = "changeCommentMessage", description="The new message for the comment"), @ApiMethod(methodName = "replyToComment", description="The message for the reply")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFileComment", description="The comment's message"), @ApiMethod(methodName = "changeCommentMessage", description="The new message for the comment"), @ApiMethod(methodName = "replyToComment", description="The message for the reply")})
     private String message;
 
     public String getCommentId() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventLogsManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventLogsManagerEndpointConfiguration.java
index 74ec436..f8da3fb 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventLogsManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventLogsManagerEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxEventLogsManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getEnterpriseEvents", description="The lower bound on the timestamp of the events returned")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getEnterpriseEvents", description="The lower bound on the timestamp of the events returned")})
     private java.util.Date after;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getEnterpriseEvents", description="The upper bound on the timestamp of the events returned")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getEnterpriseEvents", description="The upper bound on the timestamp of the events returned")})
     private java.util.Date before;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getEnterpriseEvents", description="The starting position of the event stream. May be null in which case all events within bounds returned.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "getEnterpriseEvents", description="The starting position of the event stream. May be null in which case all events within bounds returned.")})
     private String position;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getEnterpriseEvents", description="An optional list of event types to filter by")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "getEnterpriseEvents", description="An optional list of event types to filter by")})
     private com.box.sdk.BoxEvent.Type[] types;
 
     public java.util.Date getAfter() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventsManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventsManagerEndpointConfiguration.java
index 4fed986..de2c2b5 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventsManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxEventsManagerEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxEventsManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "listen", description="The starting position of the event stream")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "listen", description="The starting position of the event stream")})
     private Long startingPosition;
 
     public Long getStartingPosition() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFilesManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFilesManagerEndpointConfiguration.java
index 63ea1c4..0f088a5 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFilesManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFilesManagerEndpointConfiguration.java
@@ -20,94 +20,94 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxFilesManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFileSharedLink", description="The access level of the shared link")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createFileSharedLink", description="The access level of the shared link")})
     private com.box.sdk.BoxSharedLink.Access access;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "uploadFile", description="If the file name is already used, call the uploadNewVersion instead.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "uploadFile", description="If the file name is already used, call the uploadNewVersion instead.")})
     private Boolean check;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "uploadFile", description="A stream containing contents of the file to upload")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "uploadFile", description="A stream containing contents of the file to upload")})
     private java.io.InputStream content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "uploadFile", description="The content created date that will be given to the uploaded file")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "uploadFile", description="The content created date that will be given to the uploaded file")})
     private java.util.Date created;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "copyFile", description="The id of the destination folder"), @ApiMethod(methodName = "moveFile", description="The id of the destination folder")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "copyFile", description="The id of the destination folder"), @ApiMethod(methodName = "moveFile", description="The id of the destination folder")})
     private String destinationFolderId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFileInfo", description="The information fields to retrieve; if null all information fields are retrieved.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "getFileInfo", description="The information fields to retrieve; if null all information fields are retrieved.")})
     private String[] fields;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "uploadNewFileVersion", description="A stream containing contents of the file to upload")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "uploadNewFileVersion", description="A stream containing contents of the file to upload")})
     private java.io.InputStream fileContent;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "copyFile", description="The id of file to copy"), @ApiMethod(methodName = "createFileMetadata", description="The id of the file to create metadata for"), @ApiMethod(methodName = "createFileSharedLink", description="The id of the file to create shared link on"), @ApiMethod(methodName = "deleteFile", description="The id of file to delete"), @ApiMethod(methodName = "deleteFileMetadata", description="The id of file to delete"), @ApiMethod( [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "copyFile", description="The id of file to copy"), @ApiMethod(methodName = "createFileMetadata", description="The id of the file to create metadata for"), @ApiMethod(methodName = "createFileSharedLink", description="The id of the file to create shared link on"), @ApiMethod(methodName = "deleteFile", description="The id of file to delete"), @ApiMethod(methodName = "deleteFileMetadata", description="The id of file to del [...]
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "checkUpload", description="The name to give the uploaded file"), @ApiMethod(methodName = "uploadFile", description="The name to give the uploaded file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "checkUpload", description="The name to give the uploaded file"), @ApiMethod(methodName = "uploadFile", description="The name to give the uploaded file")})
     private String fileName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "uploadNewFileVersion", description="The size of the file's content used for monitoring the upload's progress")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "uploadNewFileVersion", description="The size of the file's content used for monitoring the upload's progress")})
     private Long fileSize;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Either PNG of JPG")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Either PNG of JPG")})
     private com.box.sdk.BoxFile.ThumbnailFileType fileType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateFileInfo", description="The updated information")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateFileInfo", description="The updated information")})
     private com.box.sdk.BoxFile.Info info;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "downloadFile", description="A listener for monitoring the download's progress; if null the download's progress will not be monitored."), @ApiMethod(methodName = "downloadPreviousFileVersion", description="A listener for monitoring the download's progress; if null the download's progress will not be monitored."), @ApiMethod(methodName = "uploadFile", description="A listener for monitoring the upload's progress"), @ApiMethod(methodName = [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "downloadFile", description="A listener for monitoring the download's progress; if null the download's progress will not be monitored."), @ApiMethod(methodName = "downloadPreviousFileVersion", description="A listener for monitoring the download's progress; if null the download's progress will not be monitored."), @ApiMethod(methodName = "uploadFile", description="A listener for monitoring the upload's progress"), @ApiMe [...]
     private com.box.sdk.ProgressListener listener;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Maximum height")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Maximum height")})
     private Integer maxHeight;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Maximum width")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Maximum width")})
     private Integer maxWidth;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFileMetadata", description="The new metadata values"), @ApiMethod(methodName = "updateFileMetadata", description="The new metadata values")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createFileMetadata", description="The new metadata values"), @ApiMethod(methodName = "updateFileMetadata", description="The new metadata values")})
     private com.box.sdk.Metadata metadata;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Minimum height")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Minimum height")})
     private Integer minHeight;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Minimum width")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getFileThumbnail", description="Minimum width")})
     private Integer minWidth;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "uploadFile", description="The content modified date that will be given to the uploaded file"), @ApiMethod(methodName = "uploadNewFileVersion", description="The content modified date that will be given to the uploaded file")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "uploadFile", description="The content modified date that will be given to the uploaded file"), @ApiMethod(methodName = "uploadNewFileVersion", description="The content modified date that will be given to the uploaded file")})
     private java.util.Date modified;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "renameFile", description="The new name of file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "renameFile", description="The new name of file")})
     private String newFileName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "copyFile", description="The new name for copied file; if newName is null, the copied file has same name as the original."), @ApiMethod(methodName = "moveFile", description="The new name of moved file; if newName is null, the moved file has same name as the original.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "copyFile", description="The new name for copied file; if newName is null, the copied file has same name as the original."), @ApiMethod(methodName = "moveFile", description="The new name of moved file; if newName is null, the moved file has same name as the original.")})
     private String newName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "downloadFile", description="The stream to which the file contents will be written"), @ApiMethod(methodName = "downloadPreviousFileVersion", description="The stream to which the version contents will be written")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "downloadFile", description="The stream to which the file contents will be written"), @ApiMethod(methodName = "downloadPreviousFileVersion", description="The stream to which the version contents will be written")})
     private java.io.OutputStream output;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "checkUpload", description="The id of parent folder"), @ApiMethod(methodName = "uploadFile", description="The id of parent folder")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "checkUpload", description="The id of parent folder"), @ApiMethod(methodName = "uploadFile", description="The id of parent folder")})
     private String parentFolderId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFileSharedLink", description="The permissions of the created link; if permissions is null then the created shared link is create with default permissions.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createFileSharedLink", description="The permissions of the created link; if permissions is null then the created shared link is create with default permissions.")})
     private com.box.sdk.BoxSharedLink.Permissions permissions;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "downloadFile", description="The byte offset in file at which to stop the download; if null the entire contents of file will be downloaded.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "downloadFile", description="The byte offset in file at which to stop the download; if null the entire contents of file will be downloaded.")})
     private Long rangeEnd;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "downloadFile", description="The byte offset in file at which to start the download; if null the entire contents of file will be downloaded.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "downloadFile", description="The byte offset in file at which to start the download; if null the entire contents of file will be downloaded.")})
     private Long rangeStart;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "checkUpload", description="The size of the file's content used for monitoring the upload's progress"), @ApiMethod(methodName = "uploadFile", description="The size of the file's content used for monitoring the upload's progress")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "checkUpload", description="The size of the file's content used for monitoring the upload's progress"), @ApiMethod(methodName = "uploadFile", description="The size of the file's content used for monitoring the upload's progress")})
     private Long size;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFileMetadata", description="The metadata template type name; if null the global properties template type is used."), @ApiMethod(methodName = "getFileMetadata", description="The metadata template type name; if null the global properties template type is used.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createFileMetadata", description="The metadata template type name; if null the global properties template type is used."), @ApiMethod(methodName = "getFileMetadata", description="The metadata template type name; if null the global properties template type is used.")})
     private String typeName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFileSharedLink", description="The date and time at which time the created shared link will expire; if unsharedDate is null then a non-expiring link is created.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createFileSharedLink", description="The date and time at which time the created shared link will expire; if unsharedDate is null then a non-expiring link is created.")})
     private java.util.Date unshareDate;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteFileVersion", description="The version of file to delete; initial version of file has value of 0, second version of file is 1 and so on."), @ApiMethod(methodName = "downloadPreviousFileVersion", description="The version of file to download; initial version of file has value of 0, second version of file is 1 and so on."), @ApiMethod(methodName = "promoteFileVersion", description="The version of file to promote; initial version of  [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteFileVersion", description="The version of file to delete; initial version of file has value of 0, second version of file is 1 and so on."), @ApiMethod(methodName = "downloadPreviousFileVersion", description="The version of file to download; initial version of file has value of 0, second version of file is 1 and so on."), @ApiMethod(methodName = "promoteFileVersion", description="The version of file to promote; i [...]
     private Integer version;
 
     public com.box.sdk.BoxSharedLink.Access getAccess() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFoldersManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFoldersManagerEndpointConfiguration.java
index f137045..d6f29a2 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFoldersManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxFoldersManagerEndpointConfiguration.java
@@ -20,46 +20,46 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxFoldersManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFolderSharedLink", description="The access level of the shared link")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createFolderSharedLink", description="The access level of the shared link")})
     private com.box.sdk.BoxSharedLink.Access access;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "copyFolder", description="The id of the destination folder"), @ApiMethod(methodName = "moveFolder", description="The id of the destination folder")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "copyFolder", description="The id of the destination folder"), @ApiMethod(methodName = "moveFolder", description="The id of the destination folder")})
     private String destinationFolderId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFolderInfo", description="The information fields to retrieve; if null all information fields are retrieved."), @ApiMethod(methodName = "getFolderItems", description="The item fields to retrieve for each child item; if null all item fields are retrieved.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "getFolderInfo", description="The information fields to retrieve; if null all information fields are retrieved."), @ApiMethod(methodName = "getFolderItems", description="The item fields to retrieve for each child item; if null all item fields are retrieved.")})
     private String[] fields;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "copyFolder", description="The id of folder to copy"), @ApiMethod(methodName = "createFolderSharedLink", description="The id of folder to create shared link on"), @ApiMethod(methodName = "deleteFolder", description="The id of folder to delete"), @ApiMethod(methodName = "getFolderInfo", description="The id of folder"), @ApiMethod(methodName = "getFolderItems", description="The id of folder"), @ApiMethod(methodName = "moveFolder", descrip [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "copyFolder", description="The id of folder to copy"), @ApiMethod(methodName = "createFolderSharedLink", description="The id of folder to create shared link on"), @ApiMethod(methodName = "deleteFolder", description="The id of folder to delete"), @ApiMethod(methodName = "getFolderInfo", description="The id of folder"), @ApiMethod(methodName = "getFolderItems", description="The id of folder"), @ApiMethod(methodName = "mo [...]
     private String folderId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFolder", description="The name of created folder")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createFolder", description="The name of created folder")})
     private String folderName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateFolderInfo", description="The updated information")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateFolderInfo", description="The updated information")})
     private com.box.sdk.BoxFolder.Info info;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFolderItems", description="The maximum number of children to retrieve after the offset; if null all child items are retrieved.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "getFolderItems", description="The maximum number of children to retrieve after the offset; if null all child items are retrieved.")})
     private Long limit;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "renameFolder", description="The new name of folder")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "renameFolder", description="The new name of folder")})
     private String newFolderName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "copyFolder", description="The new name for copied folder; if newName is null, the copied folder has same name as the original."), @ApiMethod(methodName = "moveFolder", description="The new name of moved folder; if newName is null, the moved folder has same name as the original.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "copyFolder", description="The new name for copied folder; if newName is null, the copied folder has same name as the original."), @ApiMethod(methodName = "moveFolder", description="The new name of moved folder; if newName is null, the moved folder has same name as the original.")})
     private String newName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFolderItems", description="The index of first child item to retrieve; if null all child items are retrieved.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "getFolderItems", description="The index of first child item to retrieve; if null all child items are retrieved.")})
     private Long offset;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFolder", description="The id of parent folder")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createFolder", description="The id of parent folder")})
     private String parentFolderId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFolder", description="Sequence of Box folder names from parent folder to returned folder"), @ApiMethod(methodName = "getFolder", description="Sequence of Box folder names from root folder to returned folder")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createFolder", description="Sequence of Box folder names from parent folder to returned folder"), @ApiMethod(methodName = "getFolder", description="Sequence of Box folder names from root folder to returned folder")})
     private String[] path;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFolderSharedLink", description="The permissions of the created link; if permissions is null then the created shared link is create with default permissions.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createFolderSharedLink", description="The permissions of the created link; if permissions is null then the created shared link is create with default permissions.")})
     private com.box.sdk.BoxSharedLink.Permissions permissions;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createFolderSharedLink", description="The date and time at which time the created shared link will expire; if unsharedDate is null then a non-expiring link is created.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createFolderSharedLink", description="The date and time at which time the created shared link will expire; if unsharedDate is null then a non-expiring link is created.")})
     private java.util.Date unshareDate;
 
     public com.box.sdk.BoxSharedLink.Access getAccess() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxGroupsManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxGroupsManagerEndpointConfiguration.java
index 5ea0c04..ada5426 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxGroupsManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxGroupsManagerEndpointConfiguration.java
@@ -20,40 +20,40 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxGroupsManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroup", description="The description of the new group")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createGroup", description="The description of the new group")})
     private String description;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroup", description="The external_sync_identifier of the new group")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createGroup", description="The external_sync_identifier of the new group")})
     private String externalSyncIdentifier;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addGroupMembership", description="The id of group"), @ApiMethod(methodName = "deleteGroup", description="The id of group to delete"), @ApiMethod(methodName = "getGroupInfo", description="The id of group"), @ApiMethod(methodName = "getGroupMemberships", description="The id of group"), @ApiMethod(methodName = "updateGroupInfo", description="The id of group to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addGroupMembership", description="The id of group"), @ApiMethod(methodName = "deleteGroup", description="The id of group to delete"), @ApiMethod(methodName = "getGroupInfo", description="The id of group"), @ApiMethod(methodName = "getGroupMemberships", description="The id of group"), @ApiMethod(methodName = "updateGroupInfo", description="The id of group to update")})
     private String groupId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateGroupInfo", description="The updated information")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateGroupInfo", description="The updated information")})
     private com.box.sdk.BoxGroup.Info groupInfo;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteGroupMembership", description="The id of group membership to delete"), @ApiMethod(methodName = "getGroupMembershipInfo", description="The id of group membership"), @ApiMethod(methodName = "updateGroupMembershipInfo", description="The id of group membership to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteGroupMembership", description="The id of group membership to delete"), @ApiMethod(methodName = "getGroupMembershipInfo", description="The id of group membership"), @ApiMethod(methodName = "updateGroupMembershipInfo", description="The id of group membership to update")})
     private String groupMembershipId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateGroupMembershipInfo", description="The updated information")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateGroupMembershipInfo", description="The updated information")})
     private com.box.sdk.BoxGroupMembership.Info info;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroup", description="The invitibility_level of the new group")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createGroup", description="The invitibility_level of the new group")})
     private String invitabilityLevel;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroup", description="The member_viewability_level of the new group")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createGroup", description="The member_viewability_level of the new group")})
     private String memberViewabilityLevel;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroup", description="The name of the new group")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createGroup", description="The name of the new group")})
     private String name;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroup", description="The provenance of the new group")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createGroup", description="The provenance of the new group")})
     private String provenance;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addGroupMembership", description="The role of the user in this group. Can be null to assign the default role.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "addGroupMembership", description="The role of the user in this group. Can be null to assign the default role.")})
     private com.box.sdk.BoxGroupMembership.Role role;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addGroupMembership", description="The id of user to be added to group")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addGroupMembership", description="The id of user to be added to group")})
     private String userId;
 
     public String getDescription() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxSearchManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxSearchManagerEndpointConfiguration.java
index d492b6e..3abd1fc 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxSearchManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxSearchManagerEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxSearchManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "searchFolder", description="The id of folder searched")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "searchFolder", description="The id of folder searched")})
     private String folderId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "searchFolder", description="The search query")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "searchFolder", description="The search query")})
     private String query;
 
     public String getFolderId() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxTasksManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxTasksManagerEndpointConfiguration.java
index 66b0a45..7e116cf 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxTasksManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxTasksManagerEndpointConfiguration.java
@@ -20,28 +20,28 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxTasksManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileTask", description="The action the task assignee will be prompted to do")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFileTask", description="The action the task assignee will be prompted to do")})
     private com.box.sdk.BoxTask.Action action;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addAssignmentToTask", description="The user to assign to task")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addAssignmentToTask", description="The user to assign to task")})
     private com.box.sdk.BoxUser assignTo;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileTask", description="The day at which this task is due")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFileTask", description="The day at which this task is due")})
     private java.util.Date dueAt;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileTask", description="The id of file to add task to"), @ApiMethod(methodName = "getFileTasks", description="The id of file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFileTask", description="The id of file to add task to"), @ApiMethod(methodName = "getFileTasks", description="The id of file")})
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateTaskInfo", description="The updated information")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateTaskInfo", description="The updated information")})
     private com.box.sdk.BoxTask.Info info;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileTask", description="An optional message to include with the task")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "addFileTask", description="An optional message to include with the task")})
     private String message;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteTaskAssignment", description="The id of task assignment to delete"), @ApiMethod(methodName = "getTaskAssignmentInfo", description="The id of task assignment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteTaskAssignment", description="The id of task assignment to delete"), @ApiMethod(methodName = "getTaskAssignmentInfo", description="The id of task assignment")})
     private String taskAssignmentId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addAssignmentToTask", description="The id of task to add assignment for"), @ApiMethod(methodName = "deleteTask", description="The id of task to delete"), @ApiMethod(methodName = "getTaskAssignments", description="The id of task"), @ApiMethod(methodName = "getTaskInfo", description="The id of task"), @ApiMethod(methodName = "updateTaskInfo", description="The id of task")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addAssignmentToTask", description="The id of task to add assignment for"), @ApiMethod(methodName = "deleteTask", description="The id of task to delete"), @ApiMethod(methodName = "getTaskAssignments", description="The id of task"), @ApiMethod(methodName = "getTaskInfo", description="The id of task"), @ApiMethod(methodName = "updateTaskInfo", description="The id of task")})
     private String taskId;
 
     public com.box.sdk.BoxTask.Action getAction() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxUsersManagerEndpointConfiguration.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxUsersManagerEndpointConfiguration.java
index 3393168..da28b14 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxUsersManagerEndpointConfiguration.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/BoxUsersManagerEndpointConfiguration.java
@@ -20,40 +20,40 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class BoxUsersManagerEndpointConfiguration extends BoxConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addUserEmailAlias", description="The email address to add as an alias")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addUserEmailAlias", description="The email address to add as an alias")})
     private String email;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteUserEmailAlias", description="The id of the email alias to delete")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteUserEmailAlias", description="The id of the email alias to delete")})
     private String emailAliasId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getAllEnterpriseOrExternalUsers", description="The fields to retrieve. Leave this out for the standard fields.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "getAllEnterpriseOrExternalUsers", description="The fields to retrieve. Leave this out for the standard fields.")})
     private String[] fields;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getAllEnterpriseOrExternalUsers", description="The filter term to lookup users by (login for external, login or name for managed); if null all managed users are returned.")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "getAllEnterpriseOrExternalUsers", description="The filter term to lookup users by (login for external, login or name for managed); if null all managed users are returned.")})
     private String filterTerm;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteUser", description="Whether or not this user should be deleted even if they still own files")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteUser", description="Whether or not this user should be deleted even if they still own files")})
     private Boolean force;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateUserInfo", description="The updated information")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateUserInfo", description="The updated information")})
     private com.box.sdk.BoxUser.Info info;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createEnterpriseUser", description="The email address the user will use to login")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createEnterpriseUser", description="The email address the user will use to login")})
     private String login;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createAppUser", description="The name of the user"), @ApiMethod(methodName = "createEnterpriseUser", description="The name of the user")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createAppUser", description="The name of the user"), @ApiMethod(methodName = "createEnterpriseUser", description="The name of the user")})
     private String name;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteUser", description="Whether or not to send an email notification to the user that their account has been deleted")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteUser", description="Whether or not to send an email notification to the user that their account has been deleted")})
     private Boolean notifyUser;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createAppUser", description="Additional user information"), @ApiMethod(methodName = "createEnterpriseUser", description="Additional user information")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "createAppUser", description="Additional user information"), @ApiMethod(methodName = "createEnterpriseUser", description="Additional user information")})
     private com.box.sdk.CreateUserParams params;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "moveFolderToUser", description="The user id of the user whose files will be the source for this operation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "moveFolderToUser", description="The user id of the user whose files will be the source for this operation")})
     private String sourceUserId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addUserEmailAlias", description="The id of user"), @ApiMethod(methodName = "deleteUser", description="The id of user to delete"), @ApiMethod(methodName = "deleteUserEmailAlias", description="The id of user"), @ApiMethod(methodName = "getUserEmailAlias", description="The id of user"), @ApiMethod(methodName = "getUserInfo", description="The id of user"), @ApiMethod(methodName = "moveFolderToUser", description="The id of user"), @ApiMetho [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addUserEmailAlias", description="The id of user"), @ApiMethod(methodName = "deleteUser", description="The id of user to delete"), @ApiMethod(methodName = "deleteUserEmailAlias", description="The id of user"), @ApiMethod(methodName = "getUserEmailAlias", description="The id of user"), @ApiMethod(methodName = "getUserInfo", description="The id of user"), @ApiMethod(methodName = "moveFolderToUser", description="The id of [...]
     private String userId;
 
     public String getEmail() {
diff --git a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/internal/BoxApiCollection.java b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/internal/BoxApiCollection.java
index 69db436..737bbd0 100644
--- a/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/internal/BoxApiCollection.java
+++ b/components/camel-box/camel-box-component/src/generated/java/org/apache/camel/component/box/internal/BoxApiCollection.java
@@ -108,7 +108,7 @@ public final class BoxApiCollection extends ApiCollection<BoxApiName, BoxConfigu
         aliases.put("getFolderInfo", "info");
         aliases.put("getFolderItems", "items");
         aliases.put("updateFolderInfo", "updateInfo");
-        nullableArgs = Arrays.asList("offset", "limit", "fields");
+        nullableArgs = Arrays.asList("offset", "limit", "fields", "newName");
         apiHelpers.put(BoxApiName.FOLDERS, new ApiMethodHelper<BoxFoldersManagerApiMethod>(BoxFoldersManagerApiMethod.class, aliases, nullableArgs));
         apiMethods.put(BoxFoldersManagerApiMethod.class, BoxApiName.FOLDERS);
 
diff --git a/components/camel-box/camel-box-component/src/generated/resources/org/apache/camel/component/box/box.json b/components/camel-box/camel-box-component/src/generated/resources/org/apache/camel/component/box/box.json
index 0073e72..df9a2f2 100644
--- a/components/camel-box/camel-box-component/src/generated/resources/org/apache/camel/component/box/box.json
+++ b/components/camel-box/camel-box-component/src/generated/resources/org/apache/camel/component/box/box.json
@@ -98,15 +98,15 @@
     "folders": { "aliases": [ "getRootFolder=root", "createFolder=create", "copyFolder=copy", "moveFolder=move", "renameFolder=rename", "createFolderSharedLink=link", "deleteFolder=delete", "getFolder=folder", "getFolderInfo=info", "getFolderItems=items", "updateFolderInfo=updateInfo" ], "methods": { "copyFolder": { "description": "Copy folder to destination folder while optionally giving it a new name", "signatures": [ "com.box.sdk.BoxFolder copyFolder(String folderId, String destinatio [...]
   },
   "apiProperties": {
-    "files": { "methods": { "checkUpload": { "properties": { "fileName": { "kind": "parameter", "displayName": "File Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The name to give the uploaded file" }, "parentFolderId": { "kind": "parameter", "displayName": "Parent Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String [...]
-    "search": { "methods": { "searchFolder": { "properties": { "folderId": { "kind": "parameter", "displayName": "Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of folder searched" }, "query": { "kind": "parameter", "displayName": "Query", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "se [...]
-    "comments": { "methods": { "addFileComment": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of file" }, "message": { "kind": "parameter", "displayName": "Message", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret":  [...]
-    "event-logs": { "methods": { "getEnterpriseEvents": { "properties": { "after": { "kind": "parameter", "displayName": "After", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.util.Date", "deprecated": false, "secret": false, "description": "The lower bound on the timestamp of the events returned" }, "before": { "kind": "parameter", "displayName": "Before", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.util [...]
-    "collaborations": { "methods": { "addFolderCollaboration": { "properties": { "collaborator": { "kind": "parameter", "displayName": "Collaborator", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxCollaborator", "deprecated": false, "secret": false, "description": "The collaborator to add" }, "folderId": { "kind": "parameter", "displayName": "Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "ja [...]
-    "tasks": { "methods": { "addAssignmentToTask": { "properties": { "assignTo": { "kind": "parameter", "displayName": "Assign To", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxUser", "deprecated": false, "secret": false, "description": "The user to assign to task" }, "taskId": { "kind": "parameter", "displayName": "Task Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated [...]
-    "events": { "methods": { "listen": { "properties": { "startingPosition": { "kind": "parameter", "displayName": "Starting Position", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Long", "deprecated": false, "secret": false, "description": "The starting position of the event stream" } } } } },
-    "groups": { "methods": { "addGroupMembership": { "properties": { "groupId": { "kind": "parameter", "displayName": "Group Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of group" }, "role": { "kind": "parameter", "displayName": "Role", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxGroupMembership.Role", "enum": [ "ad [...]
-    "users": { "methods": { "addUserEmailAlias": { "properties": { "email": { "kind": "parameter", "displayName": "Email", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The email address to add as an alias" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": [...]
-    "folders": { "methods": { "copyFolder": { "properties": { "destinationFolderId": { "kind": "parameter", "displayName": "Destination Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the destination folder" }, "folderId": { "kind": "parameter", "displayName": "Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.la [...]
+    "files": { "methods": { "checkUpload": { "properties": { "fileName": { "kind": "parameter", "displayName": "File Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The name to give the uploaded file", "optional": false }, "parentFolderId": { "kind": "parameter", "displayName": "Parent Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType" [...]
+    "search": { "methods": { "searchFolder": { "properties": { "folderId": { "kind": "parameter", "displayName": "Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of folder searched", "optional": false }, "query": { "kind": "parameter", "displayName": "Query", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "depr [...]
+    "comments": { "methods": { "addFileComment": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of file", "optional": false }, "message": { "kind": "parameter", "displayName": "Message", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated" [...]
+    "event-logs": { "methods": { "getEnterpriseEvents": { "properties": { "after": { "kind": "parameter", "displayName": "After", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.util.Date", "deprecated": false, "secret": false, "description": "The lower bound on the timestamp of the events returned", "optional": false }, "before": { "kind": "parameter", "displayName": "Before", "group": "common", "label": "", "required": false, "type": "string", "ja [...]
+    "collaborations": { "methods": { "addFolderCollaboration": { "properties": { "collaborator": { "kind": "parameter", "displayName": "Collaborator", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxCollaborator", "deprecated": false, "secret": false, "description": "The collaborator to add", "optional": false }, "folderId": { "kind": "parameter", "displayName": "Folder Id", "group": "common", "label": "", "required": false, "type": "strin [...]
+    "tasks": { "methods": { "addAssignmentToTask": { "properties": { "assignTo": { "kind": "parameter", "displayName": "Assign To", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxUser", "deprecated": false, "secret": false, "description": "The user to assign to task", "optional": false }, "taskId": { "kind": "parameter", "displayName": "Task Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.S [...]
+    "events": { "methods": { "listen": { "properties": { "startingPosition": { "kind": "parameter", "displayName": "Starting Position", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Long", "deprecated": false, "secret": false, "description": "The starting position of the event stream", "optional": true } } } } },
+    "groups": { "methods": { "addGroupMembership": { "properties": { "groupId": { "kind": "parameter", "displayName": "Group Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of group", "optional": false }, "role": { "kind": "parameter", "displayName": "Role", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxGroupMembership.R [...]
+    "users": { "methods": { "addUserEmailAlias": { "properties": { "email": { "kind": "parameter", "displayName": "Email", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The email address to add as an alias", "optional": false }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.Str [...]
+    "folders": { "methods": { "copyFolder": { "properties": { "destinationFolderId": { "kind": "parameter", "displayName": "Destination Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the destination folder", "optional": false }, "folderId": { "kind": "parameter", "displayName": "Folder Id", "group": "common", "label": "", "required": false, "type": "string", " [...]
   }
 }
diff --git a/components/camel-box/camel-box-component/src/main/docs/box-component.adoc b/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
index 67fa993..3ba77cd 100644
--- a/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
+++ b/components/camel-box/camel-box-component/src/main/docs/box-component.adoc
@@ -261,76 +261,74 @@ The files API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| checkUpload | *fileName* | The name to give the uploaded file | String
-| checkUpload | *parentFolderId* | The id of parent folder | String
-| checkUpload | *size* | The size of the file's content used for monitoring the upload's progress | Long
-| copyFile | *destinationFolderId* | The id of the destination folder | String
-| copyFile | *fileId* | The id of file to copy | String
-| copyFile | *newName* | The new name for copied file; if newName is null, the copied file has same name as the original. | String
-| createFileMetadata | *fileId* | The id of the file to create metadata for | String
-| createFileMetadata | *metadata* | The new metadata values | Metadata
-| createFileMetadata | *typeName* | The metadata template type name; if null the global properties template type is used. | String
-| createFileSharedLink | *access* | The access level of the shared link | Access
-| createFileSharedLink | *fileId* | The id of the file to create shared link on | String
-| createFileSharedLink | *permissions* | The permissions of the created link; if permissions is null then the created shared link is create with default permissions. | Permissions
-| createFileSharedLink | *unshareDate* | The date and time at which time the created shared link will expire; if unsharedDate is null then a non-expiring link is created. | Date
-| deleteFile | *fileId* | The id of file to delete | String
-| deleteFileMetadata | *fileId* | The id of file to delete | String
-| deleteFileVersion | *fileId* | The id of file with version to delete | String
-| deleteFileVersion | *version* | The version of file to delete; initial version of file has value of 0, second version of file is 1 and so on. | Integer
-| downloadFile | *fileId* | The id of file | String
-| downloadFile | *listener* | A listener for monitoring the download's progress; if null the download's progress will not be monitored. | ProgressListener
-| downloadFile | *output* | The stream to which the file contents will be written | OutputStream
-| downloadFile | *rangeEnd* | The byte offset in file at which to stop the download; if null the entire contents of file will be downloaded. | Long
-| downloadFile | *rangeStart* | The byte offset in file at which to start the download; if null the entire contents of file will be downloaded. | Long
-| downloadPreviousFileVersion | *fileId* | The id of file | String
-| downloadPreviousFileVersion | *listener* | A listener for monitoring the download's progress; if null the download's progress will not be monitored. | ProgressListener
-| downloadPreviousFileVersion | *output* | The stream to which the version contents will be written | OutputStream
-| downloadPreviousFileVersion | *version* | The version of file to download; initial version of file has value of 0, second version of file is 1 and so on. | Integer
-| getDownloadURL | *fileId* | The id of file | String
-| getFileInfo | *fields* | The information fields to retrieve; if null all information fields are retrieved. | String[]
-| getFileInfo | *fileId* | The id of file | String
-| getFileMetadata | *fileId* | The id of the file to retrieve metadata for | String
-| getFileMetadata | *typeName* | The metadata template type name; if null the global properties template type is used. | String
-| getFilePreviewLink | *fileId* | The id of the file to get preview link on | String
-| getFileThumbnail | *fileId* | The id of the file to get thumbnail | String
-| getFileThumbnail | *fileType* | Either PNG of JPG | ThumbnailFileType
-| getFileThumbnail | *maxHeight* | Maximum height | Integer
-| getFileThumbnail | *maxWidth* | Maximum width | Integer
-| getFileThumbnail | *minHeight* | Minimum height | Integer
-| getFileThumbnail | *minWidth* | Minimum width | Integer
-| getFileVersions | *fileId* | The id of file | String
-| moveFile | *destinationFolderId* | The id of the destination folder | String
-| moveFile | *fileId* | The id of file to move | String
-| moveFile | *newName* | The new name of moved file; if newName is null, the moved file has same name as the original. | String
-| promoteFileVersion | *fileId* | The id of file | String
-| promoteFileVersion | *version* | The version of file to promote; initial version of file has value of 0, second version of file is 1 and so on. | Integer
-| renameFile | *fileId* | The id of file to rename | String
-| renameFile | *newFileName* | The new name of file | String
-| updateFileInfo | *fileId* | The id of file to update | String
-| updateFileInfo | *info* | The updated information | Info
-| updateFileMetadata | *fileId* | The id of file to delete | String
-| updateFileMetadata | *metadata* | The new metadata values | Metadata
-| uploadFile | *check* | If the file name is already used, call the uploadNewVersion instead. | Boolean
-| uploadFile | *content* | A stream containing contents of the file to upload | InputStream
-| uploadFile | *created* | The content created date that will be given to the uploaded file | Date
-| uploadFile | *fileName* | The name to give the uploaded file | String
-| uploadFile | *listener* | A listener for monitoring the upload's progress | ProgressListener
-| uploadFile | *modified* | The content modified date that will be given to the uploaded file | Date
-| uploadFile | *parentFolderId* | The id of parent folder | String
-| uploadFile | *size* | The size of the file's content used for monitoring the upload's progress | Long
-| uploadNewFileVersion | *fileContent* | A stream containing contents of the file to upload | InputStream
-| uploadNewFileVersion | *fileId* | The id of file | String
-| uploadNewFileVersion | *fileSize* | The size of the file's content used for monitoring the upload's progress | Long
-| uploadNewFileVersion | *listener* | A listener for monitoring the upload's progress | ProgressListener
-| uploadNewFileVersion | *modified* | The content modified date that will be given to the uploaded file | Date
+| checkUpload | *fileName* |  The name to give the uploaded file | String
+| checkUpload | *parentFolderId* |  The id of parent folder | String
+| checkUpload | *size* | *Optional*  The size of the file's content used for monitoring the upload's progress | Long
+| copyFile | *destinationFolderId* |  The id of the destination folder | String
+| copyFile | *fileId* |  The id of file to copy | String
+| copyFile | *newName* | *Optional*  The new name for copied file; if newName is null, the copied file has same name as the original. | String
+| createFileMetadata | *fileId* |  The id of the file to create metadata for | String
+| createFileMetadata | *metadata* |  The new metadata values | Metadata
+| createFileMetadata | *typeName* | *Optional*  The metadata template type name; if null the global properties template type is used. | String
+| createFileSharedLink | *access* |  The access level of the shared link | Access
+| createFileSharedLink | *fileId* |  The id of the file to create shared link on | String
+| createFileSharedLink | *permissions* | *Optional*  The permissions of the created link; if permissions is null then the created shared link is create with default permissions. | Permissions
+| createFileSharedLink | *unshareDate* | *Optional*  The date and time at which time the created shared link will expire; if unsharedDate is null then a non-expiring link is created. | Date
+| deleteFile | *fileId* |  The id of file to delete | String
+| deleteFileMetadata | *fileId* |  The id of file to delete | String
+| deleteFileVersion | *fileId* |  The id of file with version to delete | String
+| deleteFileVersion | *version* |  The version of file to delete; initial version of file has value of 0, second version of file is 1 and so on. | Integer
+| downloadFile | *fileId* |  The id of file | String
+| downloadFile | *listener* | *Optional*  A listener for monitoring the download's progress; if null the download's progress will not be monitored. | ProgressListener
+| downloadFile | *output* |  The stream to which the file contents will be written | OutputStream
+| downloadFile | *rangeEnd* | *Optional*  The byte offset in file at which to stop the download; if null the entire contents of file will be downloaded. | Long
+| downloadFile | *rangeStart* | *Optional*  The byte offset in file at which to start the download; if null the entire contents of file will be downloaded. | Long
+| downloadPreviousFileVersion | *fileId* |  The id of file | String
+| downloadPreviousFileVersion | *listener* | *Optional*  A listener for monitoring the download's progress; if null the download's progress will not be monitored. | ProgressListener
+| downloadPreviousFileVersion | *output* |  The stream to which the version contents will be written | OutputStream
+| downloadPreviousFileVersion | *version* |  The version of file to download; initial version of file has value of 0, second version of file is 1 and so on. | Integer
+| getDownloadURL | *fileId* |  The id of file | String
+| getFileInfo | *fields* | *Optional*  The information fields to retrieve; if null all information fields are retrieved. | String[]
+| getFileInfo | *fileId* |  The id of file | String
+| getFileMetadata | *fileId* |  The id of the file to retrieve metadata for | String
+| getFileMetadata | *typeName* | *Optional*  The metadata template type name; if null the global properties template type is used. | String
+| getFilePreviewLink | *fileId* |  The id of the file to get preview link on | String
+| getFileThumbnail | *fileId* |  The id of the file to get thumbnail | String
+| getFileThumbnail | *fileType* |  Either PNG of JPG | ThumbnailFileType
+| getFileThumbnail | *maxHeight* |  Maximum height | Integer
+| getFileThumbnail | *maxWidth* |  Maximum width | Integer
+| getFileThumbnail | *minHeight* |  Minimum height | Integer
+| getFileThumbnail | *minWidth* |  Minimum width | Integer
+| getFileVersions | *fileId* |  The id of file | String
+| moveFile | *destinationFolderId* |  The id of the destination folder | String
+| moveFile | *fileId* |  The id of file to move | String
+| moveFile | *newName* | *Optional*  The new name of moved file; if newName is null, the moved file has same name as the original. | String
+| promoteFileVersion | *fileId* |  The id of file | String
+| promoteFileVersion | *version* |  The version of file to promote; initial version of file has value of 0, second version of file is 1 and so on. | Integer
+| renameFile | *fileId* |  The id of file to rename | String
+| renameFile | *newFileName* |  The new name of file | String
+| updateFileInfo | *fileId* |  The id of file to update | String
+| updateFileInfo | *info* |  The updated information | Info
+| updateFileMetadata | *fileId* |  The id of file to delete | String
+| updateFileMetadata | *metadata* |  The new metadata values | Metadata
+| uploadFile | *check* | *Optional*  If the file name is already used, call the uploadNewVersion instead. | Boolean
+| uploadFile | *content* |  A stream containing contents of the file to upload | InputStream
+| uploadFile | *created* | *Optional*  The content created date that will be given to the uploaded file | Date
+| uploadFile | *fileName* |  The name to give the uploaded file | String
+| uploadFile | *listener* | *Optional*  A listener for monitoring the upload's progress | ProgressListener
+| uploadFile | *modified* | *Optional*  The content modified date that will be given to the uploaded file | Date
+| uploadFile | *parentFolderId* |  The id of parent folder | String
+| uploadFile | *size* | *Optional*  The size of the file's content used for monitoring the upload's progress | Long
+| uploadNewFileVersion | *fileContent* |  A stream containing contents of the file to upload | InputStream
+| uploadNewFileVersion | *fileId* |  The id of file | String
+| uploadNewFileVersion | *fileSize* | *Optional*  The size of the file's content used for monitoring the upload's progress | Long
+| uploadNewFileVersion | *listener* | *Optional*  A listener for monitoring the upload's progress | ProgressListener
+| uploadNewFileVersion | *modified* | *Optional*  The content modified date that will be given to the uploaded file | Date
 |===
 
 In addition to the parameters above, the files API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -370,15 +368,13 @@ The search API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| searchFolder | *folderId* | The id of folder searched | String
-| searchFolder | *query* | The search query | String
+| searchFolder | *folderId* |  The id of folder searched | String
+| searchFolder | *query* |  The search query | String
 |===
 
 In addition to the parameters above, the search API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -433,22 +429,20 @@ The comments API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| addFileComment | *fileId* | The id of file | String
-| addFileComment | *message* | The comment's message | String
-| changeCommentMessage | *commentId* | The id of comment to change | String
-| changeCommentMessage | *message* | The new message for the comment | String
-| deleteComment | *commentId* | The id of comment to delete | String
-| getCommentInfo | *commentId* | The id of comment | String
-| getFileComments | *fileId* | The id of file | String
-| replyToComment | *commentId* | The id of comment to reply to | String
-| replyToComment | *message* | The message for the reply | String
+| addFileComment | *fileId* |  The id of file | String
+| addFileComment | *message* |  The comment's message | String
+| changeCommentMessage | *commentId* |  The id of comment to change | String
+| changeCommentMessage | *message* |  The new message for the comment | String
+| deleteComment | *commentId* |  The id of comment to delete | String
+| getCommentInfo | *commentId* |  The id of comment | String
+| getFileComments | *fileId* |  The id of file | String
+| replyToComment | *commentId* |  The id of comment to reply to | String
+| replyToComment | *message* |  The message for the reply | String
 |===
 
 In addition to the parameters above, the comments API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -488,17 +482,15 @@ The event-logs API method(s) has the following set of parameters listed in the t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| getEnterpriseEvents | *after* | The lower bound on the timestamp of the events returned | Date
-| getEnterpriseEvents | *before* | The upper bound on the timestamp of the events returned | Date
-| getEnterpriseEvents | *position* | The starting position of the event stream. May be null in which case all events within bounds returned. | String
-| getEnterpriseEvents | *types* | An optional list of event types to filter by | Type[]
+| getEnterpriseEvents | *after* |  The lower bound on the timestamp of the events returned | Date
+| getEnterpriseEvents | *before* |  The upper bound on the timestamp of the events returned | Date
+| getEnterpriseEvents | *position* | *Optional*  The starting position of the event stream. May be null in which case all events within bounds returned. | String
+| getEnterpriseEvents | *types* | *Optional*  An optional list of event types to filter by | Type[]
 |===
 
 In addition to the parameters above, the event-logs API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -553,24 +545,22 @@ The collaborations API method(s) has the following set of parameters listed in t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| addFolderCollaboration | *collaborator* | The collaborator to add | BoxCollaborator
-| addFolderCollaboration | *folderId* | The id of folder to add collaboration to | String
-| addFolderCollaboration | *role* | The role of the collaborator | Role
-| addFolderCollaborationByEmail | *email* | The email address of the collaborator to add | String
-| addFolderCollaborationByEmail | *folderId* | The id of folder to add collaboration to | String
-| addFolderCollaborationByEmail | *role* | The role of the collaborator | Role
-| deleteCollaboration | *collaborationId* | The id of comment to change | String
-| getCollaborationInfo | *collaborationId* | The id of collaboration | String
-| getFolderCollaborations | *folderId* | The id of folder to get collaborations information on | String
-| updateCollaborationInfo | *collaborationId* | The id of collaboration | String
-| updateCollaborationInfo | *info* |  | Info
+| addFolderCollaboration | *collaborator* |  The collaborator to add | BoxCollaborator
+| addFolderCollaboration | *folderId* |  The id of folder to add collaboration to | String
+| addFolderCollaboration | *role* |  The role of the collaborator | Role
+| addFolderCollaborationByEmail | *email* |  The email address of the collaborator to add | String
+| addFolderCollaborationByEmail | *folderId* |  The id of folder to add collaboration to | String
+| addFolderCollaborationByEmail | *role* |  The role of the collaborator | Role
+| deleteCollaboration | *collaborationId* |  The id of comment to change | String
+| getCollaborationInfo | *collaborationId* |  The id of collaboration | String
+| getFolderCollaborations | *folderId* |  The id of folder to get collaborations information on | String
+| updateCollaborationInfo | *collaborationId* |  The id of collaboration | String
+| updateCollaborationInfo | *info* |   | Info
 |===
 
 In addition to the parameters above, the collaborations API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -634,27 +624,25 @@ The tasks API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| addAssignmentToTask | *assignTo* | The user to assign to task | BoxUser
-| addAssignmentToTask | *taskId* | The id of task to add assignment for | String
-| addFileTask | *action* | The action the task assignee will be prompted to do | Action
-| addFileTask | *dueAt* | The day at which this task is due | Date
-| addFileTask | *fileId* | The id of file to add task to | String
-| addFileTask | *message* | An optional message to include with the task | String
-| deleteTask | *taskId* | The id of task to delete | String
-| deleteTaskAssignment | *taskAssignmentId* | The id of task assignment to delete | String
-| getFileTasks | *fileId* | The id of file | String
-| getTaskAssignmentInfo | *taskAssignmentId* | The id of task assignment | String
-| getTaskAssignments | *taskId* | The id of task | String
-| getTaskInfo | *taskId* | The id of task | String
-| updateTaskInfo | *info* | The updated information | Info
-| updateTaskInfo | *taskId* | The id of task | String
+| addAssignmentToTask | *assignTo* |  The user to assign to task | BoxUser
+| addAssignmentToTask | *taskId* |  The id of task to add assignment for | String
+| addFileTask | *action* |  The action the task assignee will be prompted to do | Action
+| addFileTask | *dueAt* |  The day at which this task is due | Date
+| addFileTask | *fileId* |  The id of file to add task to | String
+| addFileTask | *message* | *Optional*  An optional message to include with the task | String
+| deleteTask | *taskId* |  The id of task to delete | String
+| deleteTaskAssignment | *taskAssignmentId* |  The id of task assignment to delete | String
+| getFileTasks | *fileId* |  The id of file | String
+| getTaskAssignmentInfo | *taskAssignmentId* |  The id of task assignment | String
+| getTaskAssignments | *taskId* |  The id of task | String
+| getTaskInfo | *taskId* |  The id of task | String
+| updateTaskInfo | *info* |  The updated information | Info
+| updateTaskInfo | *taskId* |  The id of task | String
 |===
 
 In addition to the parameters above, the tasks API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -694,14 +682,12 @@ The events API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| listen | *startingPosition* | The starting position of the event stream | Long
+| listen | *startingPosition* | *Optional*  The starting position of the event stream | Long
 |===
 
 In addition to the parameters above, the events API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -765,31 +751,29 @@ The groups API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| addGroupMembership | *groupId* | The id of group | String
-| addGroupMembership | *role* | The role of the user in this group. Can be null to assign the default role. | Role
-| addGroupMembership | *userId* | The id of user to be added to group | String
-| createGroup | *description* | The description of the new group | String
-| createGroup | *externalSyncIdentifier* | The external_sync_identifier of the new group | String
-| createGroup | *invitabilityLevel* | The invitibility_level of the new group | String
-| createGroup | *memberViewabilityLevel* | The member_viewability_level of the new group | String
-| createGroup | *name* | The name of the new group | String
-| createGroup | *provenance* | The provenance of the new group | String
-| deleteGroup | *groupId* | The id of group to delete | String
-| deleteGroupMembership | *groupMembershipId* | The id of group membership to delete | String
-| getGroupInfo | *groupId* | The id of group | String
-| getGroupMembershipInfo | *groupMembershipId* | The id of group membership | String
-| getGroupMemberships | *groupId* | The id of group | String
-| updateGroupInfo | *groupId* | The id of group to update | String
-| updateGroupInfo | *groupInfo* | The updated information | Info
-| updateGroupMembershipInfo | *groupMembershipId* | The id of group membership to update | String
-| updateGroupMembershipInfo | *info* | The updated information | Info
+| addGroupMembership | *groupId* |  The id of group | String
+| addGroupMembership | *role* | *Optional*  The role of the user in this group. Can be null to assign the default role. | Role
+| addGroupMembership | *userId* |  The id of user to be added to group | String
+| createGroup | *description* | *Optional*  The description of the new group | String
+| createGroup | *externalSyncIdentifier* | *Optional*  The external_sync_identifier of the new group | String
+| createGroup | *invitabilityLevel* | *Optional*  The invitibility_level of the new group | String
+| createGroup | *memberViewabilityLevel* | *Optional*  The member_viewability_level of the new group | String
+| createGroup | *name* |  The name of the new group | String
+| createGroup | *provenance* | *Optional*  The provenance of the new group | String
+| deleteGroup | *groupId* |  The id of group to delete | String
+| deleteGroupMembership | *groupMembershipId* |  The id of group membership to delete | String
+| getGroupInfo | *groupId* |  The id of group | String
+| getGroupMembershipInfo | *groupMembershipId* |  The id of group membership | String
+| getGroupMemberships | *groupId* |  The id of group | String
+| updateGroupInfo | *groupId* |  The id of group to update | String
+| updateGroupInfo | *groupInfo* |  The updated information | Info
+| updateGroupMembershipInfo | *groupMembershipId* |  The id of group membership to update | String
+| updateGroupMembershipInfo | *info* |  The updated information | Info
 |===
 
 In addition to the parameters above, the groups API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -856,33 +840,31 @@ The users API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| addUserEmailAlias | *email* | The email address to add as an alias | String
-| addUserEmailAlias | *userId* | The id of user | String
-| createAppUser | *name* | The name of the user | String
-| createAppUser | *params* | Additional user information | CreateUserParams
-| createEnterpriseUser | *login* | The email address the user will use to login | String
-| createEnterpriseUser | *name* | The name of the user | String
-| createEnterpriseUser | *params* | Additional user information | CreateUserParams
-| deleteUser | *force* | Whether or not this user should be deleted even if they still own files | Boolean
-| deleteUser | *notifyUser* | Whether or not to send an email notification to the user that their account has been deleted | Boolean
-| deleteUser | *userId* | The id of user to delete | String
-| deleteUserEmailAlias | *emailAliasId* | The id of the email alias to delete | String
-| deleteUserEmailAlias | *userId* | The id of user | String
-| getAllEnterpriseOrExternalUsers | *fields* | The fields to retrieve. Leave this out for the standard fields. | String[]
-| getAllEnterpriseOrExternalUsers | *filterTerm* | The filter term to lookup users by (login for external, login or name for managed); if null all managed users are returned. | String
-| getUserEmailAlias | *userId* | The id of user | String
-| getUserInfo | *userId* | The id of user | String
-| moveFolderToUser | *sourceUserId* | The user id of the user whose files will be the source for this operation | String
-| moveFolderToUser | *userId* | The id of user | String
-| updateUserInfo | *info* | The updated information | Info
-| updateUserInfo | *userId* | The id of user to update | String
+| addUserEmailAlias | *email* |  The email address to add as an alias | String
+| addUserEmailAlias | *userId* |  The id of user | String
+| createAppUser | *name* |  The name of the user | String
+| createAppUser | *params* | *Optional*  Additional user information | CreateUserParams
+| createEnterpriseUser | *login* |  The email address the user will use to login | String
+| createEnterpriseUser | *name* |  The name of the user | String
+| createEnterpriseUser | *params* | *Optional*  Additional user information | CreateUserParams
+| deleteUser | *force* |  Whether or not this user should be deleted even if they still own files | Boolean
+| deleteUser | *notifyUser* |  Whether or not to send an email notification to the user that their account has been deleted | Boolean
+| deleteUser | *userId* |  The id of user to delete | String
+| deleteUserEmailAlias | *emailAliasId* |  The id of the email alias to delete | String
+| deleteUserEmailAlias | *userId* |  The id of user | String
+| getAllEnterpriseOrExternalUsers | *fields* | *Optional*  The fields to retrieve. Leave this out for the standard fields. | String[]
+| getAllEnterpriseOrExternalUsers | *filterTerm* | *Optional*  The filter term to lookup users by (login for external, login or name for managed); if null all managed users are returned. | String
+| getUserEmailAlias | *userId* |  The id of user | String
+| getUserInfo | *userId* |  The id of user | String
+| moveFolderToUser | *sourceUserId* |  The user id of the user whose files will be the source for this operation | String
+| moveFolderToUser | *userId* |  The id of user | String
+| updateUserInfo | *info* |  The updated information | Info
+| updateUserInfo | *userId* |  The id of user to update | String
 |===
 
 In addition to the parameters above, the users API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -951,673 +933,42 @@ The folders API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| copyFolder | *destinationFolderId* | The id of the destination folder | String
-| copyFolder | *folderId* | The id of folder to copy | String
-| copyFolder | *newName* | The new name for copied folder; if newName is null, the copied folder has same name as the original. | String
-| createFolder | *folderName* | The name of created folder | String
-| createFolder | *parentFolderId* | The id of parent folder | String
-| createFolder | *path* | Sequence of Box folder names from parent folder to returned folder | String[]
-| createFolderSharedLink | *access* | The access level of the shared link | Access
-| createFolderSharedLink | *folderId* | The id of folder to create shared link on | String
-| createFolderSharedLink | *permissions* | The permissions of the created link; if permissions is null then the created shared link is create with default permissions. | Permissions
-| createFolderSharedLink | *unshareDate* | The date and time at which time the created shared link will expire; if unsharedDate is null then a non-expiring link is created. | Date
-| deleteFolder | *folderId* | The id of folder to delete | String
-| getFolder | *path* | Sequence of Box folder names from root folder to returned folder | String[]
-| getFolderInfo | *fields* | The information fields to retrieve; if null all information fields are retrieved. | String[]
-| getFolderInfo | *folderId* | The id of folder | String
-| getFolderItems | *fields* | The item fields to retrieve for each child item; if null all item fields are retrieved. | String[]
-| getFolderItems | *folderId* | The id of folder | String
-| getFolderItems | *limit* | The maximum number of children to retrieve after the offset; if null all child items are retrieved. | Long
-| getFolderItems | *offset* | The index of first child item to retrieve; if null all child items are retrieved. | Long
-| moveFolder | *destinationFolderId* | The id of the destination folder | String
-| moveFolder | *folderId* | The id of folder to move | String
-| moveFolder | *newName* | The new name of moved folder; if newName is null, the moved folder has same name as the original. | String
-| renameFolder | *folderId* | The id of folder to rename | String
-| renameFolder | *newFolderName* | The new name of folder | String
-| updateFolderInfo | *folderId* | The id of folder to update | String
-| updateFolderInfo | *info* | The updated information | Info
+| copyFolder | *destinationFolderId* |  The id of the destination folder | String
+| copyFolder | *folderId* |  The id of folder to copy | String
+| copyFolder | *newName* | *Optional*  The new name for copied folder; if newName is null, the copied folder has same name as the original. | String
+| createFolder | *folderName* |  The name of created folder | String
+| createFolder | *parentFolderId* |  The id of parent folder | String
+| createFolder | *path* |  Sequence of Box folder names from parent folder to returned folder | String[]
+| createFolderSharedLink | *access* |  The access level of the shared link | Access
+| createFolderSharedLink | *folderId* |  The id of folder to create shared link on | String
+| createFolderSharedLink | *permissions* |  The permissions of the created link; if permissions is null then the created shared link is create with default permissions. | Permissions
+| createFolderSharedLink | *unshareDate* |  The date and time at which time the created shared link will expire; if unsharedDate is null then a non-expiring link is created. | Date
+| deleteFolder | *folderId* |  The id of folder to delete | String
+| getFolder | *path* |  Sequence of Box folder names from root folder to returned folder | String[]
+| getFolderInfo | *fields* | *Optional*  The information fields to retrieve; if null all information fields are retrieved. | String[]
+| getFolderInfo | *folderId* |  The id of folder | String
+| getFolderItems | *fields* | *Optional*  The item fields to retrieve for each child item; if null all item fields are retrieved. | String[]
+| getFolderItems | *folderId* |  The id of folder | String
+| getFolderItems | *limit* | *Optional*  The maximum number of children to retrieve after the offset; if null all child items are retrieved. | Long
+| getFolderItems | *offset* | *Optional*  The index of first child item to retrieve; if null all child items are retrieved. | Long
+| moveFolder | *destinationFolderId* |  The id of the destination folder | String
+| moveFolder | *folderId* |  The id of folder to move | String
+| moveFolder | *newName* | *Optional*  The new name of moved folder; if newName is null, the moved folder has same name as the original. | String
+| renameFolder | *folderId* |  The id of folder to rename | String
+| renameFolder | *newFolderName* |  The new name of folder | String
+| updateFolderInfo | *folderId* |  The id of folder to update | String
+| updateFolderInfo | *info* |  The updated information | Info
 |===
 
 In addition to the parameters above, the folders API can also use from the 38 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBox.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
 would override a `CamelBox.myParameterNameHere` header.
 // endpoint options: END
 
-== URI format
-
-[source]
-----
-box:apiName/methodName
-----
-
-apiName can be one of:
-
-* collaborations
-* comments
-* event-logs
-* files
-* folders
-* groups
-* events
-* search
-* tasks
-* users
-
-
-== Producer Endpoints:
-
-Producer endpoints can use endpoint prefixes followed by endpoint names
-and associated options described next. A shorthand alias can be used for
-some endpoints. The endpoint URI MUST contain a prefix.
-
-Endpoint options that are not mandatory are denoted by *[]*. When there
-are no mandatory options for an endpoint, one of the set of *[]* options
-MUST be provided. Producer endpoints can also use a special
-option *`inBody`* that in turn should contain the name of the endpoint
-option whose value will be contained in the Camel Exchange In message.
-
-Any of the endpoint options can be provided in either the endpoint URI,
-or dynamically in a message header. The message header name must be of
-the format *`CamelBox.<option>`*. Note that the *`inBody`* option
-overrides message header, i.e. the endpoint
-option *`inBody=option`* would override a *`CamelBox.option`* header.
-
-If a value is not provided for the option *defaultRequest* either in the
-endpoint URI or in a message header, it will be assumed to be `null`.
-Note that the `null` value will only be used if other options do not
-satisfy matching endpoints.
-
-In case of Box API errors the endpoint will throw a
-RuntimeCamelException with a
-*com.box.sdk.BoxAPIException* derived exception
-cause.
-
-=== Endpoint Prefix _collaborations_
-
-For more information on Box collaborations see
-https://developer.box.com/reference#collaboration-object[https://developer.box.com/reference#collaboration-object]. The
-following endpoints can be invoked with the prefix *`collaborations`* as
-follows:
-
-[source]
-----
-box:collaborations/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|addFolderCollaboration |add |folderId, collaborator, role |com.box.sdk.BoxCollaboration
-
-|addFolderCollaborationByEmail |addByEmail |folderId, email, role |com.box.sdk.BoxCollaboration
-
-|deleteCollaboration |delete |collaborationId |
-
-|getFolderCollaborations |collaborations |folderId |java.util.Collection
-
-|getPendingCollaborations |pendingCollaborations | |java.util.Collection
-
-|getCollaborationInfo |info |collaborationId |com.box.sdk.BoxCollaboration.Info
-
-|updateCollaborationInfo |updateInfo |collaborationId, info |com.box.sdk.BoxCollaboration
-|===
-
-URI Options for _collaborations_
-
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|collaborationId |String
-
-|collaborator |com.box.sdk.BoxCollaborator
-
-|role |com.box.sdk.BoxCollaboration.Role
-
-|folderId |String
-
-|email |String
-
-|info |com.box.sdk.BoxCollaboration.Info
-|===
-
-=== Endpoint Prefix _comments_
-
-For more information on Box comments see
-https://developer.box.com/reference#comment-object[https://developer.box.com/reference#comment-object]. The
-following endpoints can be invoked with the prefix *`comments`* as
-follows:
-
-[source]
-----
-box:comments/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|addFileComment |add |fileId, message |com.box.sdk.BoxFile
-
-|changeCommentMessage |updateMessage |commentId, message |com.box.sdk.BoxComment
-
-|deleteComment |delete |commentId |
-
-|getCommentInfo |info |commentId |com.box.sdk.BoxComment.Info
-
-|getFileComments |comments |fileId |java.util.List
-
-|replyToComment |reply |commentId, message |com.box.sdk.BoxComment
-|===
-
-URI Options for _collaborations_
-
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|commentId |String
-
-|fileId |String
-
-|message |String
-
-|===
-
-=== Endpoint Prefix _events-logs_
-
-For more information on Box event logs see
-https://developer.box.com/reference#events[https://developer.box.com/reference#events].
-The following endpoints can be invoked with the prefix *`event-logs`* as follows:
-
-[source]
-----
-box:event-logs/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|getEnterpriseEvents |events |position, after, before, [types] |java.util.List
-|===
-
-URI Options for _event-logs_
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|position |String
-
-|after |Date
-
-|before |Date
-
-|types |com.box.sdk.BoxEvent.Types[]
-|===
-
-=== Endpoint Prefix _files_
-
-For more information on Box files see
-https://developer.box.com/reference#file-object[https://developer.box.com/reference#file-object].
-The following endpoints can be invoked with the
-prefix *`files`* as follows. 
-
-[source]
-----
-box:files/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|uploadFile |upload |parentFolderId, content, fileName, [created], [modified], [size], [listener] |com.box.sdk.BoxFile
-
-|downloadFile |download |fileId, output, [rangeStart], [rangeEnd], [listener]  |java.io.OutputStream
-
-|copyFile |copy |fileId, destinationFolderId, [newName] |com.box.sdk.BoxFile
-
-|moveFile |move |fileId, destinationFolderId,  [newName] |com.box.sdk.BoxFile
-
-|renameFile |rename |fileId, newFileName |com.box.sdk.BoxFile 
-
-|createFileSharedLink |link |fileId, access, [unshareDate], [permissions] |com.box.sdk.BoxSharedLink
-
-|deleteFile |delete |fileId |
-
-|uploadNewFileVersion |uploadVersion |fileId, fileContent, [modified], [fileSize], [listener] |com.box.boxsdk.BoxFile
-
-|promoteFileVersion |promoteVersion |fileId, version |com.box.sdk.BoxFileVersion
-
-|getFileVersions |versions |fileId |java.util.Collection
-
-|downloadPreviousFileVersion |downloadVersion |fileId, version, output, [listener] |java.io.OutputStream
-
-|deleteFileVersion |deleteVersion |fileId, version |
-
-|getFileInfo |info |fileId, fields |com.box.sdk.BoxFile.Info
-
-|updateFileInfo |updateInfo |fileId, info |com.box.sdk.BoxFile
-
-|createFileMetadata |createMetadata |fileId, metadata, [typeName] |com.box.sdk.Metadata
-
-|getFileMetadata |metadata |fileId, [typeName] |com.box.sdk.Metadata
-
-|updateFileMetadata |updateMetadata |fileId, metadata |com.box.sdk.Metadata
-
-|deleteFileMetadata |deleteMetadata |fileId | 
-
-|getDownloadUrl |url |fileId |java.net.URL
-
-|getPreviewLink |preview |fileId |java.net.URL
-
-|getFileThumbnail |thumbnail |fileId, fileType, minWidth, minHeight, maxWidth, maxHeight |byte[]
-|===
-
-URI Options for _files_
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|parentFolderId |String
-
-|content |java.io.InputStream
-
-|fileName |String
-
-|created |Date
-
-|modified |Date
-
-|size |Long
-
-|listener |com.box.sdk.ProgressListener 
-
-|output |java.io.OutputStream
-
-|rangeStart |Long
-
-|rangeEnd |Long
-
-|outputStreams |java.io.OutputStream[]
-
-|destinationFolderId |String
-
-|newName |String
-
-|fields |String[]
-
-|info |com.box.sdk.BoxFile.Info
-
-|fileSize |Long
-
-|version |Integer
-
-|access |com.box.sdk.BoxSharedLink.Access
-
-|unshareDate |Date
-
-|permissions |com.box.sdk.BoxSharedLink.Permissions
-
-|fileType |com.box.sdk.BoxFile.ThumbnailFileType
-
-|minWidth |Integer
-
-|minHeight |Integer
-
-|maxWidth |Integer
-
-|maxHeight |Integer
-
-|metadata |com.box.sdk.Metadata
-
-|typeName |String
-|===
-
-=== Endpoint Prefix _folders_
-
-For more information on Box folders see
-https://developer.box.com/reference#folder-object[https://developer.box.com/reference#folder-object].
-The following endpoints can be invoked with the prefix
-*`folders`* as follows. 
-
-[source]
-----
-box:folders/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|getRootFolder |root  | |com.box.sdk.BoxFolder
-
-|createFolder |create |parentFolderId, folderName |com.box.sdk.BoxFolder
-
-|createFolder |create |parentFolderId, path |com.box.sdk.BoxFolder
-
-|copyFolder |copy |folderId, destinationfolderId, [newName] |com.box.sdk.BoxFolder 
-
-|moveFolder |move |folderId, destinationFolderId, newName |com.box.sdk.BoxFolder
-
-|renameFolder |rename |folderId, newFolderName |com.box.sdk.BoxFolder
-
-|createFolderSharedLink |link |folderId, access, [unsharedDate], [permissions] |java.util.List
-
-|deleteFolder |delete |folderId |
-
-|getFolder |folder |path |com.box.sdk.BoxFolder
-
-|getFolderInfo |info |folderId, fields |com.box.sdk.BoxFolder.Info
-
-|getFolderItems |items |folderId, offset, limit, fields |java.util.List
-
-|updateFolderInfo |updateInfo |folderId, info |com.box.sdk.BoxFolder
-|===
-
-URI Options for _folders_
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|path |String[]
-
-|folderId |String
-
-|offset |Long
-
-|limit |Long
-
-|fields |String[]
-
-|parentFolderId |String
-
-|folderName |String
-
-|destinationFolderId |String
-
-|newName |String
-
-|newFolderName |String
-
-|info |String
-
-|access |com.box.sdk.BoxSharedLink.Access
-
-|unshareDate |Date
-
-|permissions |com.box.sdk.BoxSharedLink.Permissions
-|===
-
-=== Endpoint Prefix _groups_
-
-For more information on Box groups see
-https://developer.box.com/reference#group-object[https://developer.box.com/reference#group-object].
-The following endpoints can be invoked with the prefix *`groups`* as
-follows:
-
-[source]
-----
-box:groups/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|createGroup |create |name, [provenance, externalSyncIdentifier, description, invitabilityLevel, memberViewabilityLevel] |com.box.sdk.BoxGroup 
-
-|addGroupMembership |createMembership |groupId, userId, role |com.box.sdk.BoxGroupMembership
-
-|deleteGroup |delete |groupId |
-
-|getAllGroups |groups | |java.util.Collection
-
-|getGroupInfo |info |groupId |com.box.sdk.BoxGroup.Info
-
-|updateGroupInfo |updateInfo |groupId, groupInfo |com.box.sdk.BoxGroup
-
-|addGroupMembership |addMembership |groupId, userId, role |com.box.sdk.BoxGroupMembership
-
-|deleteGroupMembership |deleteMembership |groupMembershipId |
-
-|getGroupMemberships |memberships |groupId |java.uti.Collection
-
-|getGroupMembershipInfo |membershipInfo |groupMembershipId |com.box.sdk.BoxGroup.Info
-
-|updateGroupMembershipInfo |updateMembershipInfo |groupMembershipId, info |com.box.sdk.BoxGroupMembership
-|===
-
-URI Options for _groups_
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|name |String
-
-|groupId |String
-
-|userId |String
-
-|role |com.box.sdk.BoxGroupMembership.Role
-
-|groupMembershipId |String
-
-|info |com.box.sdk.BoxGroupMembership.Info
-
-|===
-
-=== Endpoint Prefix _search_
-
-For more information on Box search API see
-https://developer.box.com/reference#searching-for-content[https://developer.box.com/reference#searching-for-content]. The
-following endpoints can be invoked with the prefix *`search`* as
-follows:
-
-[source]
-----
-box:search/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|searchFolder |search |folderId, query |java.util.Collection
-|===
-
-URI Options for _search_
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|folderId |String
-
-|query |String
-|===
-
-=== Endpoint Prefix _tasks_
-
-For information on Box tasks see
-https://developer.box.com/reference#task-object-1[https://developer.box.com/reference#task-object-1].
-The following endpoints can be invoked with the prefix *`tasks`* as
-follows:
-
-[source]
-----
-box:tasks/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|addFileTask |add  |fileId, action, dueAt, [message] |com.box.sdk.BoxUser
-
-|deleteTask |delete |taskId |
-
-|getFileTasks |tasks  |fileId |java.util.List
-
-|getTaskInfo |info  |taskId |com.box.sdk.BoxTask.Info
-
-|updateTaskInfo |updateInfo |taskId, info |com.box.sdk.BoxTask
-
-|addAssignmentToTask |addAssignment |taskId, assignTo |com.box.sdk.BoxTask
-
-|deleteTaskAssignment |deleteAssignment |taskAssignmentId |
-
-|getTaskAssignments |assignments  | taskId |java.util.List
-
-|getTaskAssignmentInfo |assignmentInfo |taskAssignmentId |com.box.sdk.BoxTaskAssignment.Info
-|===
-
-URI Options for _tasks_
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|fileId |String
-
-|action |com.box.sdk.BoxTask.Action
-
-|dueAt |Date
-
-|message |String
-
-|taskId |String
-
-|info |com.box.sdk.BoxTask.Info
-
-|assignTo |com.box.sdk.BoxUser
-
-|taskAssignmentId |String
-|===
-
-=== Endpoint Prefix _users_
-
-For information on Box users see
-https://developer.box.com/reference#user-object[https://developer.box.com/reference#user-object].
-The following endpoints can be invoked with the prefix *`users`* as
-follows:
-
-[source]
-----
-box:users/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|getCurrentUser |currentUser  | |com.box.sdk.BoxUser
-
-|getAllEnterpriseOrExternalUsers |users |filterTerm, [fields] |com.box.sdk.BoxUser
-
-|createAppUser |create  |name, [params] |com.box.sdk.BoxUser
-
-|createEnterpriseUser |create  |login, name, [params] |com.box.sdk.BoxUser
-
-|deleteUser |delete |userId, notifyUser, force |
-
-|getUserEmailAlias |emailAlias |userId |com.box.sdk.BoxUser
-
-|deleteUserEmailAlias |deleteEmailAlias |userId, emailAliasId |java.util.List
-
-|getUserInfo |info  | userId |com.box.sdk.BoxUser.Info
-
-|updateUserInfo |updateInfo |userId, info |com.box.sdk.BoxUser
-
-|moveFolderToUser |- |userId, sourceUserId |com.box.sdk.BoxFolder.Info
-|===
-
-URI Options for _users_
-
-[width="100%",cols="10%,90%",options="header"]
-|===
-|Name |Type
-
-|email |String
-
-|emailAliasId |String
-
-|fields |String[]
-
-|filterTerm |String
-
-|folderId |String
-
-|force |boolean
-
-|info |com.box.sdk.BoxUser.Info
-
-|login |String
-
-|name |String
-
-|notifyUser |boolean
-
-|params |com.box.sdk.CreateUserParams
-
-|sourceUserId |String
-
-|userId |String
-|===
-
-== Consumer Endpoints:
-
-For more information on Box events see
-https://developer.box.com/reference#events[https://developer.box.com/reference#events].
-Consumer endpoints can only use the endpoint prefix *events* as
-shown in the example next.
-
-[source]
-----
-box:events/endpoint?[options]
-----
-
-[width="100%",cols="10%,10%,10%,70%",options="header"]
-|===
-|Endpoint |Shorthand Alias |Options |Result Body Type
-
-|events |  |[startingPosition] |com.box.sdk.BoxEvent 
-|===
-
-URI Options for _events_
-
-[width="100%",cols="10%,90%",options="header",]
-|===
-|Name |Type
-
-|startingPosition |Long
-|===
-
-== Message header
-
-Any of the options can be provided in a message header for producer
-endpoints with *CamelBox.* prefix.
-
-== Message body
-
-All result message bodies utilize objects provided by the Box Java SDK.
-Producer endpoints can specify the option name for incoming message body
-in the *inBody* endpoint parameter.
-
 == Samples
 
 The following route uploads new files to the user's root folder:
@@ -1651,4 +1002,8 @@ from("direct:foo")
     .to("file://...");
 ----
 
+=== More information
+
+See more details at the Box API reference: https://developer.box.com/reference
+
 include::camel-spring-boot::page$box-starter.adoc[]
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/AddressGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/AddressGatewayEndpointConfiguration.java
index 29016d4..96885e6 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/AddressGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/AddressGatewayEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AddressGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The id of the Customer"), @ApiMethod(methodName = "delete", description="The id of the Customer"), @ApiMethod(methodName = "find", description="The id of the Customer"), @ApiMethod(methodName = "update", description="The id of the Customer")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The id of the Customer"), @ApiMethod(methodName = "delete", description="The id of the Customer"), @ApiMethod(methodName = "find", description="The id of the Customer"), @ApiMethod(methodName = "update", description="The id of the Customer")})
     private String customerId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The id of the Address to delete"), @ApiMethod(methodName = "find", description="The id of the Address"), @ApiMethod(methodName = "update", description="The id of the Address")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The id of the Address to delete"), @ApiMethod(methodName = "find", description="The id of the Address"), @ApiMethod(methodName = "update", description="The id of the Address")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The request object"), @ApiMethod(methodName = "update", description="The request object containing the AddressRequest parameters")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The request object"), @ApiMethod(methodName = "update", description="The request object containing the AddressRequest parameters")})
     private com.braintreegateway.AddressRequest request;
 
     public String getCustomerId() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/ClientTokenGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/ClientTokenGatewayEndpointConfiguration.java
index 19ec21c..2dfd7d8 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/ClientTokenGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/ClientTokenGatewayEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ClientTokenGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "generate")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "generate")})
     private com.braintreegateway.ClientTokenRequest request;
 
     public com.braintreegateway.ClientTokenRequest getRequest() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/CreditCardVerificationGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/CreditCardVerificationGatewayEndpointConfiguration.java
index 5262a7e..bf78404 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/CreditCardVerificationGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/CreditCardVerificationGatewayEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CreditCardVerificationGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "find")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "find")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "search")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "search")})
     private com.braintreegateway.CreditCardVerificationSearchRequest query;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create")})
     private com.braintreegateway.CreditCardVerificationRequest request;
 
     public String getId() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/CustomerGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/CustomerGatewayEndpointConfiguration.java
index 1844360..0f8f3fe 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/CustomerGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/CustomerGatewayEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CustomerGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "find", description="The id of the association filter to use")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "find", description="The id of the association filter to use")})
     private String associationFilterId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The id of the Customer"), @ApiMethod(methodName = "find", description="The id of the Customer"), @ApiMethod(methodName = "update", description="The id of the Customer")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The id of the Customer"), @ApiMethod(methodName = "find", description="The id of the Customer"), @ApiMethod(methodName = "update", description="The id of the Customer")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "search", description="The request query to use for search")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "search", description="The request query to use for search")})
     private com.braintreegateway.CustomerSearchRequest query;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The request"), @ApiMethod(methodName = "update", description="The request")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The request"), @ApiMethod(methodName = "update", description="The request")})
     private com.braintreegateway.CustomerRequest request;
 
     public String getAssociationFilterId() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/DisputeGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/DisputeGatewayEndpointConfiguration.java
index 8237cf8..fe3e57a 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/DisputeGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/DisputeGatewayEndpointConfiguration.java
@@ -20,28 +20,28 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DisputeGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addTextEvidence", description="The content of the text evidence for the dispute")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addTextEvidence", description="The content of the text evidence for the dispute")})
     private String content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileEvidence", description="The dispute id to add text evidence to"), @ApiMethod(methodName = "removeEvidence", description="The dispute id to remove evidence from")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFileEvidence", description="The dispute id to add text evidence to"), @ApiMethod(methodName = "removeEvidence", description="The dispute id to remove evidence from")})
     private String disputeId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileEvidence", description="The document id of a previously uploaded document")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFileEvidence", description="The document id of a previously uploaded document")})
     private String documentId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "removeEvidence", description="The evidence id to remove")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "removeEvidence", description="The evidence id to remove")})
     private String evidenceId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addFileEvidence", description="The file evidence request for the dispute")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addFileEvidence", description="The file evidence request for the dispute")})
     private com.braintreegateway.FileEvidenceRequest fileEvidenceRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "accept", description="The dispute id to accept"), @ApiMethod(methodName = "addTextEvidence", description="The dispute id to add text evidence to"), @ApiMethod(methodName = "finalize", description="The dispute id to finalize"), @ApiMethod(methodName = "find", description="The dispute id to find")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "accept", description="The dispute id to accept"), @ApiMethod(methodName = "addTextEvidence", description="The dispute id to add text evidence to"), @ApiMethod(methodName = "finalize", description="The dispute id to finalize"), @ApiMethod(methodName = "find", description="The dispute id to find")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "search", description="The query for what disputes to find")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "search", description="The query for what disputes to find")})
     private com.braintreegateway.DisputeSearchRequest query;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addTextEvidence", description="The text evidence request for the dispute")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addTextEvidence", description="The text evidence request for the dispute")})
     private com.braintreegateway.TextEvidenceRequest textEvidenceRequest;
 
     public String getContent() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/DocumentUploadGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/DocumentUploadGatewayEndpointConfiguration.java
index c24c006..16a9503 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/DocumentUploadGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/DocumentUploadGatewayEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DocumentUploadGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create")})
     private com.braintreegateway.DocumentUploadRequest request;
 
     public com.braintreegateway.DocumentUploadRequest getRequest() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/MerchantAccountGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/MerchantAccountGatewayEndpointConfiguration.java
index 024c3f3..ca64ebb 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/MerchantAccountGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/MerchantAccountGatewayEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class MerchantAccountGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createForCurrency")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createForCurrency")})
     private com.braintreegateway.MerchantAccountCreateForCurrencyRequest currencyRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "find"), @ApiMethod(methodName = "update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "find"), @ApiMethod(methodName = "update")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetchMerchantAccounts")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetchMerchantAccounts")})
     private Integer page;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create"), @ApiMethod(methodName = "update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create"), @ApiMethod(methodName = "update")})
     private com.braintreegateway.MerchantAccountRequest request;
 
     public com.braintreegateway.MerchantAccountCreateForCurrencyRequest getCurrencyRequest() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/PaymentMethodGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/PaymentMethodGatewayEndpointConfiguration.java
index 02a7b64..f7c14e5 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/PaymentMethodGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/PaymentMethodGatewayEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class PaymentMethodGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete")})
     private com.braintreegateway.PaymentMethodDeleteRequest deleteRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "grant")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "grant")})
     private com.braintreegateway.PaymentMethodGrantRequest grantRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create"), @ApiMethod(methodName = "update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create"), @ApiMethod(methodName = "update")})
     private com.braintreegateway.PaymentMethodRequest request;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete"), @ApiMethod(methodName = "find"), @ApiMethod(methodName = "grant"), @ApiMethod(methodName = "revoke"), @ApiMethod(methodName = "update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete"), @ApiMethod(methodName = "find"), @ApiMethod(methodName = "grant"), @ApiMethod(methodName = "revoke"), @ApiMethod(methodName = "update")})
     private String token;
 
     public com.braintreegateway.PaymentMethodDeleteRequest getDeleteRequest() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/PaymentMethodNonceGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/PaymentMethodNonceGatewayEndpointConfiguration.java
index 482f06e..45f2429 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/PaymentMethodNonceGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/PaymentMethodNonceGatewayEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class PaymentMethodNonceGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "find")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "find")})
     private String paymentMethodNonce;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create")})
     private String paymentMethodToken;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create")})
     private com.braintreegateway.PaymentMethodNonceRequest request;
 
     public String getPaymentMethodNonce() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/ReportGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/ReportGatewayEndpointConfiguration.java
index 30efd47..c48a2a8 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/ReportGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/ReportGatewayEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ReportGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "transactionLevelFees", description="The request")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "transactionLevelFees", description="The request")})
     private com.braintreegateway.TransactionLevelFeeReportRequest request;
 
     public com.braintreegateway.TransactionLevelFeeReportRequest getRequest() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/SettlementBatchSummaryGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/SettlementBatchSummaryGatewayEndpointConfiguration.java
index a1ba25d..a1c050e 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/SettlementBatchSummaryGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/SettlementBatchSummaryGatewayEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SettlementBatchSummaryGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "generate")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "generate")})
     private String groupByCustomField;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "generate"), @ApiMethod(methodName = "generate")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "generate"), @ApiMethod(methodName = "generate")})
     private java.util.Calendar settlementDate;
 
     public String getGroupByCustomField() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/SubscriptionGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/SubscriptionGatewayEndpointConfiguration.java
index ee4c527..518e36b 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/SubscriptionGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/SubscriptionGatewayEndpointConfiguration.java
@@ -20,25 +20,25 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SubscriptionGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "retryCharge")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "retryCharge")})
     private java.math.BigDecimal amount;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete")})
     private String customerId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "cancel", description="Of the Subscription to cancel"), @ApiMethod(methodName = "delete"), @ApiMethod(methodName = "find", description="The id of the Subscription"), @ApiMethod(methodName = "update", description="The id of the Subscription")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "cancel", description="Of the Subscription to cancel"), @ApiMethod(methodName = "delete"), @ApiMethod(methodName = "find", description="The id of the Subscription"), @ApiMethod(methodName = "update", description="The id of the Subscription")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The request"), @ApiMethod(methodName = "update", description="The request")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The request"), @ApiMethod(methodName = "update", description="The request")})
     private com.braintreegateway.SubscriptionRequest request;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "search", description="The SubscriptionSearchRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "search", description="The SubscriptionSearchRequest")})
     private com.braintreegateway.SubscriptionSearchRequest searchRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "retryCharge")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "retryCharge")})
     private Boolean submitForSettlement;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "retryCharge")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "retryCharge")})
     private String subscriptionId;
 
     public java.math.BigDecimal getAmount() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/TransactionGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/TransactionGatewayEndpointConfiguration.java
index be55799..9b9ccda 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/TransactionGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/TransactionGatewayEndpointConfiguration.java
@@ -20,22 +20,22 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class TransactionGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "refund"), @ApiMethod(methodName = "submitForPartialSettlement", description="Of the partial settlement"), @ApiMethod(methodName = "submitForSettlement", description="To settle. must be less than or equal to the authorization amount.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "refund"), @ApiMethod(methodName = "submitForPartialSettlement", description="Of the partial settlement"), @ApiMethod(methodName = "submitForSettlement", description="To settle. must be less than or equal to the authorization amount.")})
     private java.math.BigDecimal amount;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "cloneTransaction")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "cloneTransaction")})
     private com.braintreegateway.TransactionCloneRequest cloneRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "cancelRelease", description="Of the transaction to cancel release from escrow of"), @ApiMethod(methodName = "cloneTransaction"), @ApiMethod(methodName = "find", description="The id of the Transaction"), @ApiMethod(methodName = "holdInEscrow", description="Of the transaction to hold for escrow"), @ApiMethod(methodName = "refund"), @ApiMethod(methodName = "releaseFromEscrow", description="Of the transaction to submit for release"), @ApiM [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "cancelRelease", description="Of the transaction to cancel release from escrow of"), @ApiMethod(methodName = "cloneTransaction"), @ApiMethod(methodName = "find", description="The id of the Transaction"), @ApiMethod(methodName = "holdInEscrow", description="Of the transaction to hold for escrow"), @ApiMethod(methodName = "refund"), @ApiMethod(methodName = "releaseFromEscrow", description="Of the transaction to submit fo [...]
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "search", description="The search query")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "search", description="The search query")})
     private com.braintreegateway.TransactionSearchRequest query;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "refund")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "refund")})
     private com.braintreegateway.TransactionRefundRequest refundRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "credit", description="The request"), @ApiMethod(methodName = "sale", description="The request"), @ApiMethod(methodName = "submitForPartialSettlement", description="The request"), @ApiMethod(methodName = "submitForSettlement", description="The request"), @ApiMethod(methodName = "updateDetails", description="The request")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "credit", description="The request"), @ApiMethod(methodName = "sale", description="The request"), @ApiMethod(methodName = "submitForPartialSettlement", description="The request"), @ApiMethod(methodName = "submitForSettlement", description="The request"), @ApiMethod(methodName = "updateDetails", description="The request")})
     private com.braintreegateway.TransactionRequest request;
 
     public java.math.BigDecimal getAmount() {
diff --git a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/WebhookNotificationGatewayEndpointConfiguration.java b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/WebhookNotificationGatewayEndpointConfiguration.java
index 6aef1d1..ca56b75 100644
--- a/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/WebhookNotificationGatewayEndpointConfiguration.java
+++ b/components/camel-braintree/src/generated/java/org/apache/camel/component/braintree/WebhookNotificationGatewayEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class WebhookNotificationGatewayEndpointConfiguration extends BraintreeConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "verify")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "verify")})
     private String challenge;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "parse")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "parse")})
     private String payload;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "parse")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "parse")})
     private String signature;
 
     public String getChallenge() {
diff --git a/components/camel-braintree/src/generated/resources/org/apache/camel/component/braintree/braintree.json b/components/camel-braintree/src/generated/resources/org/apache/camel/component/braintree/braintree.json
index 520805d..7391981 100644
--- a/components/camel-braintree/src/generated/resources/org/apache/camel/component/braintree/braintree.json
+++ b/components/camel-braintree/src/generated/resources/org/apache/camel/component/braintree/braintree.json
@@ -83,19 +83,19 @@
     "customer": { "methods": { "create": { "description": "Creates a Customer", "signatures": [ "com.braintreegateway.Result<com.braintreegateway.Customer> create(com.braintreegateway.CustomerRequest request)" ] }, "delete": { "description": "Deletes a Customer by id", "signatures": [ "com.braintreegateway.Result<com.braintreegateway.Customer> delete(String id)" ] }, "find": { "description": "Finds a Customer by id", "signatures": [ "com.braintreegateway.Customer find(String id)", "com.b [...]
   },
   "apiProperties": {
-    "paymentMethodNonce": { "methods": { "create": { "properties": { "paymentMethodToken": { "kind": "parameter", "displayName": "Payment Method Token", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.PaymentMethodNon [...]
-    "documentUpload": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.DocumentUploadRequest", "deprecated": false, "secret": false, "description": "" } } } } },
-    "subscription": { "methods": { "cancel": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Of the Subscription to cancel" } } }, "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegat [...]
-    "dispute": { "methods": { "accept": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The dispute id to accept" } } }, "addFileEvidence": { "properties": { "disputeId": { "kind": "parameter", "displayName": "Dispute Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.St [...]
-    "settlementBatchSummary": { "methods": { "generate": { "properties": { "groupByCustomField": { "kind": "parameter", "displayName": "Group By Custom Field", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "settlementDate": { "kind": "parameter", "displayName": "Settlement Date", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Calen [...]
-    "address": { "methods": { "create": { "properties": { "customerId": { "kind": "parameter", "displayName": "Customer Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the Customer" }, "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.AddressRequest", "depr [...]
-    "webhookNotification": { "methods": { "parse": { "properties": { "payload": { "kind": "parameter", "displayName": "Payload", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "signature": { "kind": "parameter", "displayName": "Signature", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false,  [...]
-    "creditCardVerification": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.CreditCardVerificationRequest", "deprecated": false, "secret": false, "description": "" } } }, "find": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "jav [...]
-    "transaction": { "methods": { "cancelRelease": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Of the transaction to cancel release from escrow of" } } }, "cloneTransaction": { "properties": { "cloneRequest": { "kind": "parameter", "displayName": "Clone Request", "group": "common", "label": "", "required": false [...]
-    "report": { "methods": { "transactionLevelFees": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.TransactionLevelFeeReportRequest", "deprecated": false, "secret": false, "description": "The request" } } } } },
-    "paymentMethod": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.PaymentMethodRequest", "deprecated": false, "secret": false, "description": "" } } }, "delete": { "properties": { "deleteRequest": { "kind": "parameter", "displayName": "Delete Request", "group": "common", "label": "", "required": false, "type": "object", "javaType [...]
-    "clientToken": { "methods": { "generate": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.ClientTokenRequest", "deprecated": false, "secret": false, "description": "" } } } } },
-    "merchantAccount": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.MerchantAccountRequest", "deprecated": false, "secret": false, "description": "" } } }, "createForCurrency": { "properties": { "currencyRequest": { "kind": "parameter", "displayName": "Currency Request", "group": "common", "label": "", "required": false, "type":  [...]
-    "customer": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.CustomerRequest", "deprecated": false, "secret": false, "description": "The request" } } }, "delete": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", [...]
+    "paymentMethodNonce": { "methods": { "create": { "properties": { "paymentMethodToken": { "kind": "parameter", "displayName": "Payment Method Token", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "", "optional": false }, "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegatew [...]
+    "documentUpload": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.DocumentUploadRequest", "deprecated": false, "secret": false, "description": "", "optional": false } } } } },
+    "subscription": { "methods": { "cancel": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Of the Subscription to cancel", "optional": false } } }, "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType" [...]
+    "dispute": { "methods": { "accept": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The dispute id to accept", "optional": false } } }, "addFileEvidence": { "properties": { "disputeId": { "kind": "parameter", "displayName": "Dispute Id", "group": "common", "label": "", "required": false, "type": "string", "javaT [...]
+    "settlementBatchSummary": { "methods": { "generate": { "properties": { "groupByCustomField": { "kind": "parameter", "displayName": "Group By Custom Field", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "", "optional": false }, "settlementDate": { "kind": "parameter", "displayName": "Settlement Date", "group": "common", "label": "", "required": false, "type": "object", "javaType [...]
+    "address": { "methods": { "create": { "properties": { "customerId": { "kind": "parameter", "displayName": "Customer Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the Customer", "optional": false }, "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.Add [...]
+    "webhookNotification": { "methods": { "parse": { "properties": { "payload": { "kind": "parameter", "displayName": "Payload", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "", "optional": false }, "signature": { "kind": "parameter", "displayName": "Signature", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false [...]
+    "creditCardVerification": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.CreditCardVerificationRequest", "deprecated": false, "secret": false, "description": "", "optional": false } } }, "find": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string [...]
+    "transaction": { "methods": { "cancelRelease": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Of the transaction to cancel release from escrow of", "optional": false } } }, "cloneTransaction": { "properties": { "cloneRequest": { "kind": "parameter", "displayName": "Clone Request", "group": "common", "label": "" [...]
+    "report": { "methods": { "transactionLevelFees": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.TransactionLevelFeeReportRequest", "deprecated": false, "secret": false, "description": "The request", "optional": false } } } } },
+    "paymentMethod": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.PaymentMethodRequest", "deprecated": false, "secret": false, "description": "", "optional": false } } }, "delete": { "properties": { "deleteRequest": { "kind": "parameter", "displayName": "Delete Request", "group": "common", "label": "", "required": false, "type":  [...]
+    "clientToken": { "methods": { "generate": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.ClientTokenRequest", "deprecated": false, "secret": false, "description": "", "optional": false } } } } },
+    "merchantAccount": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.MerchantAccountRequest", "deprecated": false, "secret": false, "description": "", "optional": false } } }, "createForCurrency": { "properties": { "currencyRequest": { "kind": "parameter", "displayName": "Currency Request", "group": "common", "label": "", "require [...]
+    "customer": { "methods": { "create": { "properties": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.CustomerRequest", "deprecated": false, "secret": false, "description": "The request", "optional": false } } }, "delete": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType":  [...]
   }
 }
diff --git a/components/camel-braintree/src/main/docs/braintree-component.adoc b/components/camel-braintree/src/main/docs/braintree-component.adoc
index 6c9a37a..93c47f7 100644
--- a/components/camel-braintree/src/main/docs/braintree-component.adoc
+++ b/components/camel-braintree/src/main/docs/braintree-component.adoc
@@ -176,16 +176,14 @@ The paymentMethodNonce API method(s) has the following set of parameters listed
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *paymentMethodToken* |  | String
-| create | *request* |  | PaymentMethodNonceRequest
-| find | *paymentMethodNonce* |  | String
+| create | *paymentMethodToken* |   | String
+| create | *request* |   | PaymentMethodNonceRequest
+| find | *paymentMethodNonce* |   | String
 |===
 
 In addition to the parameters above, the paymentMethodNonce API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -225,14 +223,12 @@ The documentUpload API method(s) has the following set of parameters listed in t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *request* |  | DocumentUploadRequest
+| create | *request* |   | DocumentUploadRequest
 |===
 
 In addition to the parameters above, the documentUpload API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -296,24 +292,22 @@ The subscription API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| cancel | *id* | Of the Subscription to cancel | String
-| create | *request* | The request | SubscriptionRequest
-| delete | *customerId* |  | String
-| delete | *id* |  | String
-| find | *id* | The id of the Subscription | String
-| retryCharge | *amount* |  | BigDecimal
-| retryCharge | *submitForSettlement* |  | Boolean
-| retryCharge | *subscriptionId* |  | String
-| search | *searchRequest* | The SubscriptionSearchRequest | SubscriptionSearchRequest
-| update | *id* | The id of the Subscription | String
-| update | *request* | The request | SubscriptionRequest
+| cancel | *id* |  Of the Subscription to cancel | String
+| create | *request* |  The request | SubscriptionRequest
+| delete | *customerId* |   | String
+| delete | *id* |   | String
+| find | *id* |  The id of the Subscription | String
+| retryCharge | *amount* |   | BigDecimal
+| retryCharge | *submitForSettlement* |   | Boolean
+| retryCharge | *subscriptionId* |   | String
+| search | *searchRequest* |  The SubscriptionSearchRequest | SubscriptionSearchRequest
+| update | *id* |  The id of the Subscription | String
+| update | *request* |  The request | SubscriptionRequest
 |===
 
 In addition to the parameters above, the subscription API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -375,25 +369,23 @@ The dispute API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| accept | *id* | The dispute id to accept | String
-| addFileEvidence | *disputeId* | The dispute id to add text evidence to | String
-| addFileEvidence | *documentId* | The document id of a previously uploaded document | String
-| addFileEvidence | *fileEvidenceRequest* | The file evidence request for the dispute | FileEvidenceRequest
-| addTextEvidence | *content* | The content of the text evidence for the dispute | String
-| addTextEvidence | *id* | The dispute id to add text evidence to | String
-| addTextEvidence | *textEvidenceRequest* | The text evidence request for the dispute | TextEvidenceRequest
-| finalize | *id* | The dispute id to finalize | String
-| find | *id* | The dispute id to find | String
-| removeEvidence | *disputeId* | The dispute id to remove evidence from | String
-| removeEvidence | *evidenceId* | The evidence id to remove | String
-| search | *query* | The query for what disputes to find | DisputeSearchRequest
+| accept | *id* |  The dispute id to accept | String
+| addFileEvidence | *disputeId* |  The dispute id to add text evidence to | String
+| addFileEvidence | *documentId* |  The document id of a previously uploaded document | String
+| addFileEvidence | *fileEvidenceRequest* |  The file evidence request for the dispute | FileEvidenceRequest
+| addTextEvidence | *content* |  The content of the text evidence for the dispute | String
+| addTextEvidence | *id* |  The dispute id to add text evidence to | String
+| addTextEvidence | *textEvidenceRequest* |  The text evidence request for the dispute | TextEvidenceRequest
+| finalize | *id* |  The dispute id to finalize | String
+| find | *id* |  The dispute id to find | String
+| removeEvidence | *disputeId* |  The dispute id to remove evidence from | String
+| removeEvidence | *evidenceId* |  The evidence id to remove | String
+| search | *query* |  The query for what disputes to find | DisputeSearchRequest
 |===
 
 In addition to the parameters above, the dispute API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -435,15 +427,13 @@ The settlementBatchSummary API method(s) has the following set of parameters lis
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| generate | *groupByCustomField* |  | String
-| generate | *settlementDate* |  | Calendar
+| generate | *groupByCustomField* |   | String
+| generate | *settlementDate* |   | Calendar
 |===
 
 In addition to the parameters above, the settlementBatchSummary API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -492,22 +482,20 @@ The address API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *customerId* | The id of the Customer | String
-| create | *request* | The request object | AddressRequest
-| delete | *customerId* | The id of the Customer | String
-| delete | *id* | The id of the Address to delete | String
-| find | *customerId* | The id of the Customer | String
-| find | *id* | The id of the Address | String
-| update | *customerId* | The id of the Customer | String
-| update | *id* | The id of the Address | String
-| update | *request* | The request object containing the AddressRequest parameters | AddressRequest
+| create | *customerId* |  The id of the Customer | String
+| create | *request* |  The request object | AddressRequest
+| delete | *customerId* |  The id of the Customer | String
+| delete | *id* |  The id of the Address to delete | String
+| find | *customerId* |  The id of the Customer | String
+| find | *id* |  The id of the Address | String
+| update | *customerId* |  The id of the Customer | String
+| update | *id* |  The id of the Address | String
+| update | *request* |  The request object containing the AddressRequest parameters | AddressRequest
 |===
 
 In addition to the parameters above, the address API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -550,16 +538,14 @@ The webhookNotification API method(s) has the following set of parameters listed
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| parse | *payload* |  | String
-| parse | *signature* |  | String
-| verify | *challenge* |  | String
+| parse | *payload* |   | String
+| parse | *signature* |   | String
+| verify | *challenge* |   | String
 |===
 
 In addition to the parameters above, the webhookNotification API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -605,16 +591,14 @@ The creditCardVerification API method(s) has the following set of parameters lis
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *request* |  | CreditCardVerificationRequest
-| find | *id* |  | String
-| search | *query* |  | CreditCardVerificationSearchRequest
+| create | *request* |   | CreditCardVerificationRequest
+| find | *id* |   | String
+| search | *query* |   | CreditCardVerificationSearchRequest
 |===
 
 In addition to the parameters above, the creditCardVerification API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -700,34 +684,32 @@ The transaction API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| cancelRelease | *id* | Of the transaction to cancel release from escrow of | String
-| cloneTransaction | *cloneRequest* |  | TransactionCloneRequest
-| cloneTransaction | *id* |  | String
-| credit | *request* | The request | TransactionRequest
-| find | *id* | The id of the Transaction | String
-| holdInEscrow | *id* | Of the transaction to hold for escrow | String
-| refund | *amount* |  | BigDecimal
-| refund | *id* |  | String
-| refund | *refundRequest* |  | TransactionRefundRequest
-| releaseFromEscrow | *id* | Of the transaction to submit for release | String
-| sale | *request* | The request | TransactionRequest
-| search | *query* | The search query | TransactionSearchRequest
-| submitForPartialSettlement | *amount* | Of the partial settlement | BigDecimal
-| submitForPartialSettlement | *id* | Of the transaction to add the partial settlement transaction for | String
-| submitForPartialSettlement | *request* | The request | TransactionRequest
-| submitForSettlement | *amount* | To settle. must be less than or equal to the authorization amount. | BigDecimal
-| submitForSettlement | *id* | Of the transaction to submit for settlement | String
-| submitForSettlement | *request* | The request | TransactionRequest
-| updateDetails | *id* | Of the transaction to update the details for | String
-| updateDetails | *request* | The request | TransactionRequest
-| voidTransaction | *id* | Of the transaction to void | String
+| cancelRelease | *id* |  Of the transaction to cancel release from escrow of | String
+| cloneTransaction | *cloneRequest* |   | TransactionCloneRequest
+| cloneTransaction | *id* |   | String
+| credit | *request* |  The request | TransactionRequest
+| find | *id* |  The id of the Transaction | String
+| holdInEscrow | *id* |  Of the transaction to hold for escrow | String
+| refund | *amount* |   | BigDecimal
+| refund | *id* |   | String
+| refund | *refundRequest* |   | TransactionRefundRequest
+| releaseFromEscrow | *id* |  Of the transaction to submit for release | String
+| sale | *request* |  The request | TransactionRequest
+| search | *query* |  The search query | TransactionSearchRequest
+| submitForPartialSettlement | *amount* |  Of the partial settlement | BigDecimal
+| submitForPartialSettlement | *id* |  Of the transaction to add the partial settlement transaction for | String
+| submitForPartialSettlement | *request* |  The request | TransactionRequest
+| submitForSettlement | *amount* |  To settle. must be less than or equal to the authorization amount. | BigDecimal
+| submitForSettlement | *id* |  Of the transaction to submit for settlement | String
+| submitForSettlement | *request* |  The request | TransactionRequest
+| updateDetails | *id* |  Of the transaction to update the details for | String
+| updateDetails | *request* |  The request | TransactionRequest
+| voidTransaction | *id* |  Of the transaction to void | String
 |===
 
 In addition to the parameters above, the transaction API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -767,14 +749,12 @@ The report API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| transactionLevelFees | *request* | The request | TransactionLevelFeeReportRequest
+| transactionLevelFees | *request* |  The request | TransactionLevelFeeReportRequest
 |===
 
 In addition to the parameters above, the report API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -833,22 +813,20 @@ The paymentMethod API method(s) has the following set of parameters listed in th
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *request* |  | PaymentMethodRequest
-| delete | *deleteRequest* |  | PaymentMethodDeleteRequest
-| delete | *token* |  | String
-| find | *token* |  | String
-| grant | *grantRequest* |  | PaymentMethodGrantRequest
-| grant | *token* |  | String
-| revoke | *token* |  | String
-| update | *request* |  | PaymentMethodRequest
-| update | *token* |  | String
+| create | *request* |   | PaymentMethodRequest
+| delete | *deleteRequest* |   | PaymentMethodDeleteRequest
+| delete | *token* |   | String
+| find | *token* |   | String
+| grant | *grantRequest* |   | PaymentMethodGrantRequest
+| grant | *token* |   | String
+| revoke | *token* |   | String
+| update | *request* |   | PaymentMethodRequest
+| update | *token* |   | String
 |===
 
 In addition to the parameters above, the paymentMethod API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -890,14 +868,12 @@ The clientToken API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| generate | *request* |  | ClientTokenRequest
+| generate | *request* |   | ClientTokenRequest
 |===
 
 In addition to the parameters above, the clientToken API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -949,19 +925,17 @@ The merchantAccount API method(s) has the following set of parameters listed in
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *request* |  | MerchantAccountRequest
-| createForCurrency | *currencyRequest* |  | MerchantAccountCreateForCurrencyRequest
-| fetchMerchantAccounts | *page* |  | Integer
-| find | *id* |  | String
-| update | *id* |  | String
-| update | *request* |  | MerchantAccountRequest
+| create | *request* |   | MerchantAccountRequest
+| createForCurrency | *currencyRequest* |   | MerchantAccountCreateForCurrencyRequest
+| fetchMerchantAccounts | *page* |   | Integer
+| find | *id* |   | String
+| update | *id* |   | String
+| update | *request* |   | MerchantAccountRequest
 |===
 
 In addition to the parameters above, the merchantAccount API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1015,20 +989,18 @@ The customer API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *request* | The request | CustomerRequest
-| delete | *id* | The id of the Customer | String
-| find | *associationFilterId* | The id of the association filter to use | String
-| find | *id* | The id of the Customer | String
-| search | *query* | The request query to use for search | CustomerSearchRequest
-| update | *id* | The id of the Customer | String
-| update | *request* | The request | CustomerRequest
+| create | *request* |  The request | CustomerRequest
+| delete | *id* |  The id of the Customer | String
+| find | *associationFilterId* |  The id of the association filter to use | String
+| find | *id* |  The id of the Customer | String
+| search | *query* |  The request query to use for search | CustomerSearchRequest
+| update | *id* |  The id of the Customer | String
+| update | *request* |  The request | CustomerRequest
 |===
 
 In addition to the parameters above, the customer API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelBraintree.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCapabilitiesEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCapabilitiesEndpointConfiguration.java
index 03661f1..16dda58 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCapabilitiesEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCapabilitiesEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirCapabilitiesEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "ofType", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "ofType", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "ofType", description="The model type")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "ofType", description="The model type")})
     private Class<org.hl7.fhir.instance.model.api.IBaseConformance> type;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCreateEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCreateEndpointConfiguration.java
index 5d73e75..3d58218 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCreateEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirCreateEndpointConfiguration.java
@@ -20,19 +20,19 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirCreateEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "resource", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "resource", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource", description="Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource() , may be null"), @ApiMethod(methodName = "resource", description="Add a Prefer header to the request, which requests that the server include or suppress the resource b [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource", description="Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource() , may be null"), @ApiMethod(methodName = "resource", description="Add a Prefer header to the request, which requests that the server include or suppre [...]
     private ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource", description="The resource to create")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resource", description="The resource to create")})
     private org.hl7.fhir.instance.model.api.IBaseResource resource;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource", description="The resource to create")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resource", description="The resource to create")})
     private String resourceAsString;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource", description="The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366, may be null"), @ApiMethod(methodName = "resource", description="The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366, may be null")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource", description="The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366, may be null"), @ApiMethod(methodName = "resource", description="The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366, may be null")})
     private String url;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirDeleteEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirDeleteEndpointConfiguration.java
index 6babfad..d219966 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirDeleteEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirDeleteEndpointConfiguration.java
@@ -20,22 +20,22 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirDeleteEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "resourceById", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "resourceById", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "resourceConditionalByUrl", de [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "resourceById", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "resourceById", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "resourceCond [...]
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById", description="The IIdType referencing the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceById", description="The IIdType referencing the resource")})
     private org.hl7.fhir.instance.model.api.IIdType id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource", description="The IBaseResource to delete")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resource", description="The IBaseResource to delete")})
     private org.hl7.fhir.instance.model.api.IBaseResource resource;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById", description="It's id")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceById", description="It's id")})
     private String stringId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById", description="The resource type e.g Patient")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceById", description="The resource type e.g Patient")})
     private String type;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceConditionalByUrl", description="The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceConditionalByUrl", description="The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366")})
     private String url;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirHistoryEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirHistoryEndpointConfiguration.java
index 3dbc106..cedd243 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirHistoryEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirHistoryEndpointConfiguration.java
@@ -20,25 +20,25 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirHistoryEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="Request that the server return only up to theCount number of resources, may be NULL"), @ApiMethod(methodName = "onServer", description="Request that the server return only up to theCount number of resources, may be NULL"), @ApiMethod(methodName = "onType", description="Request that the server return only up to theCount number of resources, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "onInstance", description="Request that the server return only up to theCount number of resources, may be NULL"), @ApiMethod(methodName = "onServer", description="Request that the server return only up to theCount number of resources, may be NULL"), @ApiMethod(methodName = "onType", description="Request that the server return only up to theCount number of resources, may be NULL")})
     private Integer count;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL"), @ApiMethod(methodName = "onServer", description="Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL"), @ApiMethod(methodName = "onType", description="Request that the server return only resource versions that were [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "onInstance", description="Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL"), @ApiMethod(methodName = "onServer", description="Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL"), @ApiMethod(methodName = "onType", description="Request that the server return only resource v [...]
     private java.util.Date cutoff;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onServer", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onType", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "onInstance", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onServer", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onType", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL"), @ApiMethod(methodName = "onServer", description="Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL"), @ApiMethod(methodName = "onType", description="Request that the server return only resource versions that were [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "onInstance", description="Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL"), @ApiMethod(methodName = "onServer", description="Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL"), @ApiMethod(methodName = "onType", description="Request that the server return only resource v [...]
     private org.hl7.fhir.instance.model.api.IPrimitiveType<java.util.Date> iCutoff;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="The IIdType which must be populated with both a resource type and a resource ID at")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "onInstance", description="The IIdType which must be populated with both a resource type and a resource ID at")})
     private org.hl7.fhir.instance.model.api.IIdType id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onType", description="The resource type to search for")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "onType", description="The resource type to search for")})
     private Class<org.hl7.fhir.instance.model.api.IBaseResource> resourceType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server."), @ApiMethod(methodName = "onServer", description="Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server."), @ApiMethod(methodName = "onType", description="Reque [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "onInstance", description="Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server."), @ApiMethod(methodName = "onServer", description="Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server."), @ApiMethod(methodName = "onType",  [...]
     private Class<org.hl7.fhir.instance.model.api.IBaseBundle> returnType;
 
     public Integer getCount() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirLoadPageEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirLoadPageEndpointConfiguration.java
index 1205554..2fb1786 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirLoadPageEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirLoadPageEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirLoadPageEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "next", description="The IBaseBundle"), @ApiMethod(methodName = "previous", description="The IBaseBundle")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "next", description="The IBaseBundle"), @ApiMethod(methodName = "previous", description="The IBaseBundle")})
     private org.hl7.fhir.instance.model.api.IBaseBundle bundle;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "byUrl", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "next", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "previous", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "byUrl", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "next", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "previous", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "byUrl", description="The return type")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "byUrl", description="The return type")})
     private Class<org.hl7.fhir.instance.model.api.IBaseBundle> returnType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "byUrl", description="The search url")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "byUrl", description="The search url")})
     private String url;
 
     public org.hl7.fhir.instance.model.api.IBaseBundle getBundle() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirMetaEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirMetaEndpointConfiguration.java
index fbc556a..6421410 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirMetaEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirMetaEndpointConfiguration.java
@@ -20,19 +20,19 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirMetaEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "add", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "delete", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "getFromResource", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "getFromServer", description="See Extr [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "add", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "delete", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "getFromResource", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "getFromServer", desc [...]
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "add", description="The id"), @ApiMethod(methodName = "delete", description="The id"), @ApiMethod(methodName = "getFromResource", description="The id")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "add", description="The id"), @ApiMethod(methodName = "delete", description="The id"), @ApiMethod(methodName = "getFromResource", description="The id")})
     private org.hl7.fhir.instance.model.api.IIdType id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "add", description="The IBaseMetaType class"), @ApiMethod(methodName = "delete", description="The IBaseMetaType class")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "add", description="The IBaseMetaType class"), @ApiMethod(methodName = "delete", description="The IBaseMetaType class")})
     private org.hl7.fhir.instance.model.api.IBaseMetaType meta;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFromResource", description="The IBaseMetaType class"), @ApiMethod(methodName = "getFromServer", description="The type of the meta datatype for the given FHIR model version (should be MetaDt.class or MetaType.class)"), @ApiMethod(methodName = "getFromType", description="The IBaseMetaType class")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getFromResource", description="The IBaseMetaType class"), @ApiMethod(methodName = "getFromServer", description="The type of the meta datatype for the given FHIR model version (should be MetaDt.class or MetaType.class)"), @ApiMethod(methodName = "getFromType", description="The IBaseMetaType class")})
     private Class<org.hl7.fhir.instance.model.api.IBaseMetaType> metaType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getFromType", description="The resource type e.g Patient")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getFromType", description="The resource type e.g Patient")})
     private String resourceType;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirOperationEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirOperationEndpointConfiguration.java
index a5a2706..46b3294 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirOperationEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirOperationEndpointConfiguration.java
@@ -20,40 +20,40 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirOperationEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "processMessage", description="Whether to process the message asynchronously or synchronously, defaults to synchronous.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "processMessage", description="Whether to process the message asynchronously or synchronously, defaults to synchronous.")})
     private Boolean asynchronous;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onInstanceVersion", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onServer", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onType", description="See  [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "onInstance", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onInstanceVersion", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onServer", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "onType",  [...]
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="Resource (version will be stripped)"), @ApiMethod(methodName = "onInstanceVersion", description="Resource version")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "onInstance", description="Resource (version will be stripped)"), @ApiMethod(methodName = "onInstanceVersion", description="Resource version")})
     private org.hl7.fhir.instance.model.api.IIdType id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "processMessage", description="Set the Message Bundle to POST to the messaging server")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "processMessage", description="Set the Message Bundle to POST to the messaging server")})
     private org.hl7.fhir.instance.model.api.IBaseBundle msgBundle;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="Operation name"), @ApiMethod(methodName = "onInstanceVersion", description="Operation name"), @ApiMethod(methodName = "onServer", description="Operation name"), @ApiMethod(methodName = "onType", description="Operation name")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "onInstance", description="Operation name"), @ApiMethod(methodName = "onInstanceVersion", description="Operation name"), @ApiMethod(methodName = "onServer", description="Operation name"), @ApiMethod(methodName = "onType", description="Operation name")})
     private String name;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL"), @ApiMethod(methodName = "onInstanceVersion", description="The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL"), @ApiMethod(methodName = "onServer", d [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "onInstance", description="The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL"), @ApiMethod(methodName = "onInstanceVersion", description="The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL"), @ApiMethod(methodNam [...]
     private Class<org.hl7.fhir.instance.model.api.IBaseParameters> outputParameterType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="The parameters to use as input. May also be null if the operation does not require any input parameters."), @ApiMethod(methodName = "onInstanceVersion", description="The parameters to use as input. May also be null if the operation does not require any input parameters."), @ApiMethod(methodName = "onServer", description="The parameters to use as input. May also be null if the operation does not require any inp [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "onInstance", description="The parameters to use as input. May also be null if the operation does not require any input parameters."), @ApiMethod(methodName = "onInstanceVersion", description="The parameters to use as input. May also be null if the operation does not require any input parameters."), @ApiMethod(methodName = "onServer", description="The parameters to use as input. May also be null if the operation does no [...]
     private org.hl7.fhir.instance.model.api.IBaseParameters parameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onType", description="The resource type to operate on")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "onType", description="The resource type to operate on")})
     private Class<org.hl7.fhir.instance.model.api.IBaseResource> resourceType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "processMessage", description="An optional query parameter indicating that responses from the receiving server should be sent to this URI, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "processMessage", description="An optional query parameter indicating that responses from the receiving server should be sent to this URI, may be NULL")})
     private String respondToUri;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "processMessage", description="The response class")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "processMessage", description="The response class")})
     private Class<org.hl7.fhir.instance.model.api.IBaseBundle> responseClass;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/$everything) which return a bundle instead of a Parameters resource, may be NULL"), @ApiMethod(methodName = "onInstanceVersion", description="If this operation returns a single resource body as its return typ [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "onInstance", description="If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/$everything) which return a bundle instead of a Parameters resource, may be NULL"), @ApiMethod(methodName = "onInstanceVersion", description="If this operation returns a single resource body  [...]
     private Class<org.hl7.fhir.instance.model.api.IBaseResource> returnType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "onInstance", description="Use HTTP GET verb"), @ApiMethod(methodName = "onInstanceVersion", description="Use HTTP GET verb"), @ApiMethod(methodName = "onServer", description="Use HTTP GET verb"), @ApiMethod(methodName = "onType", description="Use HTTP GET verb")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "onInstance", description="Use HTTP GET verb"), @ApiMethod(methodName = "onInstanceVersion", description="Use HTTP GET verb"), @ApiMethod(methodName = "onServer", description="Use HTTP GET verb"), @ApiMethod(methodName = "onType", description="Use HTTP GET verb")})
     private Boolean useHttpGet;
 
     public Boolean getAsynchronous() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirPatchEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirPatchEndpointConfiguration.java
index b8fc3a2..0e8a165c 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirPatchEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirPatchEndpointConfiguration.java
@@ -20,22 +20,22 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirPatchEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "patchById", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "patchById", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "patchByUrl", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "patchById", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "patchById", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "patchByUrl", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "patchById", description="The resource ID to patch")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "patchById", description="The resource ID to patch")})
     private org.hl7.fhir.instance.model.api.IIdType id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "patchById", description="The body of the patch document serialized in either XML or JSON which conforms to http://jsonpatch.com/ or http://tools.ietf.org/html/rfc5261"), @ApiMethod(methodName = "patchById", description="The body of the patch document serialized in either XML or JSON which conforms to http://jsonpatch.com/ or http://tools.ietf.org/html/rfc5261"), @ApiMethod(methodName = "patchByUrl", description="The body of the patch d [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "patchById", description="The body of the patch document serialized in either XML or JSON which conforms to http://jsonpatch.com/ or http://tools.ietf.org/html/rfc5261"), @ApiMethod(methodName = "patchById", description="The body of the patch document serialized in either XML or JSON which conforms to http://jsonpatch.com/ or http://tools.ietf.org/html/rfc5261"), @ApiMethod(methodName = "patchByUrl", description="The b [...]
     private String patchBody;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "patchById", description="Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource()"), @ApiMethod(methodName = "patchById", description="Add a Prefer header to the request, which requests that the server include or suppress the resource body as a par [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "patchById", description="Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource()"), @ApiMethod(methodName = "patchById", description="Add a Prefer header to the request, which requests that the server include or suppress the resou [...]
     private ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "patchById", description="The resource ID to patch")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "patchById", description="The resource ID to patch")})
     private String stringId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "patchByUrl", description="The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "patchByUrl", description="The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366")})
     private String url;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirReadEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirReadEndpointConfiguration.java
index 0b9f730..115f9a4 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirReadEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirReadEndpointConfiguration.java
@@ -20,43 +20,43 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirReadEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceByUrl")})
     private org.hl7.fhir.instance.model.api.IIdType iUrl;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceById")})
     private org.hl7.fhir.instance.model.api.IIdType id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
     private String ifVersionMatches;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceById")})
     private Long longId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl")})
     private Class<org.hl7.fhir.instance.model.api.IBaseResource> resource;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl")})
     private String resourceClass;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
     private Boolean returnNull;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
     private org.hl7.fhir.instance.model.api.IBaseResource returnResource;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceById")})
     private String stringId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceById"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl"), @ApiMethod(methodName = "resourceByUrl")})
     private Boolean throwError;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceByUrl")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceByUrl")})
     private String url;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceById")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resourceById")})
     private String version;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirSearchEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirSearchEndpointConfiguration.java
index c1e7ecc..67adc53 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirSearchEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirSearchEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirSearchEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "searchByUrl", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "searchByUrl", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "searchByUrl", description="The URL to search for. Note that this URL may be complete (e.g. http://example.com/base/Patientname=foo) in which case the client's base URL will be ignored. Or it can be relative (e.g. Patientname=foo) in which case the client's base URL will be used.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "searchByUrl", description="The URL to search for. Note that this URL may be complete (e.g. http://example.com/base/Patientname=foo) in which case the client's base URL will be ignored. Or it can be relative (e.g. Patientname=foo) in which case the client's base URL will be used.")})
     private String url;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirTransactionEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirTransactionEndpointConfiguration.java
index 39f5f29..b2adad2 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirTransactionEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirTransactionEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirTransactionEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "withBundle", description="Bundle to use in the transaction")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "withBundle", description="Bundle to use in the transaction")})
     private org.hl7.fhir.instance.model.api.IBaseBundle bundle;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "withBundle", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "withBundle", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "withResources", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "withBundle", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "withBundle", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL"), @ApiMethod(methodName = "withResources", description="See ExtraParameters for a full list of parameters that can be passed, may be NULL")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "withResources", description="Resources to use in the transaction")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "withResources", description="Resources to use in the transaction")})
     private java.util.List<org.hl7.fhir.instance.model.api.IBaseResource> resources;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "withBundle", description="Bundle to use in the transaction")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "withBundle", description="Bundle to use in the transaction")})
     private String stringBundle;
 
     public org.hl7.fhir.instance.model.api.IBaseBundle getBundle() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirUpdateEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirUpdateEndpointConfiguration.java
index c3c22e7..3febf9e 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirUpdateEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirUpdateEndpointConfiguration.java
@@ -20,25 +20,25 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirUpdateEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resourceBySearchUrl"), @ApiMethod(methodName = "resourceBySearchUrl")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resourceBySearchUrl"), @ApiMethod(methodName = "resourceBySearchUrl")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource")})
     private org.hl7.fhir.instance.model.api.IIdType id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resourceBySearchUrl"), @ApiMethod(methodName = "resourceBySearchUrl")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resourceBySearchUrl"), @ApiMethod(methodName = "resourceBySearchUrl")})
     private ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resourceBySearchUrl")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resourceBySearchUrl")})
     private org.hl7.fhir.instance.model.api.IBaseResource resource;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resourceBySearchUrl")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resourceBySearchUrl")})
     private String resourceAsString;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource")})
     private String stringId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resourceBySearchUrl")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resourceBySearchUrl")})
     private String url;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirValidateEndpointConfiguration.java b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirValidateEndpointConfiguration.java
index 7603a3f..296ee6d 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirValidateEndpointConfiguration.java
+++ b/components/camel-fhir/camel-fhir-component/src/generated/java/org/apache/camel/component/fhir/FhirValidateEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class FhirValidateEndpointConfiguration extends FhirConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "resource"), @ApiMethod(methodName = "resource")})
     private java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resource")})
     private org.hl7.fhir.instance.model.api.IBaseResource resource;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resource")})
     private String resourceAsString;
 
     public java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> getExtraParameters() {
diff --git a/components/camel-fhir/camel-fhir-component/src/generated/resources/org/apache/camel/component/fhir/fhir.json b/components/camel-fhir/camel-fhir-component/src/generated/resources/org/apache/camel/component/fhir/fhir.json
index 946e75c..8f4996d 100644
--- a/components/camel-fhir/camel-fhir-component/src/generated/resources/org/apache/camel/component/fhir/fhir.json
+++ b/components/camel-fhir/camel-fhir-component/src/generated/resources/org/apache/camel/component/fhir/fhir.json
@@ -117,18 +117,18 @@
     "delete": { "methods": { "resource": { "description": "Deletes the given resource", "signatures": [ "org.hl7.fhir.instance.model.api.IBaseOperationOutcome resource(org.hl7.fhir.instance.model.api.IBaseResource resource, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters)" ] }, "resourceById": { "description": "Deletes the resource by resource type e", "signatures": [ "org.hl7.fhir.instance.model.api.IBaseOperationOutcome resourceById(String typ [...]
   },
   "apiProperties": {
-    "update": { "methods": { "resource": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "object", "javaType [...]
-    "create": { "methods": { "resource": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL" }, "preferReturn": { "kind": "parameter", "display [...]
-    "validate": { "methods": { "resource": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "" }, "resource": { "kind": "parameter", "displayName": "Resource", "group": "common", "label": "", "required": false, "type": "obje [...]
-    "operation": { "methods": { "onInstance": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL" }, "id": { "kind": "parameter", "displayName" [...]
-    "search": { "methods": { "searchByUrl": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL" }, "url": { "kind": "parameter", "displayName": [...]
-    "capabilities": { "methods": { "ofType": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL" }, "type": { "kind": "parameter", "displayName [...]
-    "patch": { "methods": { "patchById": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL" }, "id": { "kind": "parameter", "displayName": "Id [...]
-    "meta": { "methods": { "add": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL" }, "id": { "kind": "parameter", "displayName": "Id", "gro [...]
-    "history": { "methods": { "onInstance": { "properties": { "count": { "kind": "parameter", "displayName": "Count", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "description": "Request that the server return only up to theCount number of resources, may be NULL" }, "cutoff": { "kind": "parameter", "displayName": "Cutoff", "group": "common", "label": "", "required": false, "type": "string", "j [...]
-    "load-page": { "methods": { "byUrl": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL" }, "returnType": { "kind": "parameter", "displayNa [...]
-    "transaction": { "methods": { "withBundle": { "properties": { "bundle": { "kind": "parameter", "displayName": "Bundle", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.hl7.fhir.instance.model.api.IBaseBundle", "deprecated": false, "secret": false, "description": "Bundle to use in the transaction" }, "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "ja [...]
-    "read": { "methods": { "resourceById": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "object", "javaTy [...]
-    "delete": { "methods": { "resource": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL" }, "resource": { "kind": "parameter", "displayName [...]
+    "update": { "methods": { "resource": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "", "optional": true }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": " [...]
+    "create": { "methods": { "resource": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL", "optional": true }, "preferReturn": { "kind": "pa [...]
+    "validate": { "methods": { "resource": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "", "optional": true }, "resource": { "kind": "parameter", "displayName": "Resource", "group": "common", "label": "", "required": fa [...]
+    "operation": { "methods": { "onInstance": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL", "optional": true }, "id": { "kind": "paramet [...]
+    "search": { "methods": { "searchByUrl": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL", "optional": true }, "url": { "kind": "paramete [...]
+    "capabilities": { "methods": { "ofType": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL", "optional": true }, "type": { "kind": "parame [...]
+    "patch": { "methods": { "patchById": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL", "optional": true }, "id": { "kind": "parameter",  [...]
+    "meta": { "methods": { "add": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL", "optional": true }, "id": { "kind": "parameter", "displa [...]
+    "history": { "methods": { "onInstance": { "properties": { "count": { "kind": "parameter", "displayName": "Count", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "description": "Request that the server return only up to theCount number of resources, may be NULL", "optional": true }, "cutoff": { "kind": "parameter", "displayName": "Cutoff", "group": "common", "label": "", "required": false, "t [...]
+    "load-page": { "methods": { "byUrl": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL", "optional": true }, "returnType": { "kind": "para [...]
+    "transaction": { "methods": { "withBundle": { "properties": { "bundle": { "kind": "parameter", "displayName": "Bundle", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.hl7.fhir.instance.model.api.IBaseBundle", "deprecated": false, "secret": false, "description": "Bundle to use in the transaction", "optional": false }, "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "t [...]
+    "read": { "methods": { "resourceById": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "", "optional": true }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": [...]
+    "delete": { "methods": { "resource": { "properties": { "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, java.lang.Object>", "deprecated": false, "secret": false, "description": "See ExtraParameters for a full list of parameters that can be passed, may be NULL", "optional": true }, "resource": { "kind": "parame [...]
   }
 }
diff --git a/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc b/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
index b8e8435..76345b2 100644
--- a/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
+++ b/components/camel-fhir/camel-fhir-component/src/main/docs/fhir-component.adoc
@@ -225,24 +225,22 @@ The update API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| resource | *extraParameters* |  | Map
-| resource | *id* |  | IIdType
-| resource | *preferReturn* |  | PreferReturnEnum
-| resource | *resource* |  | IBaseResource
-| resource | *resourceAsString* |  | String
-| resource | *stringId* |  | String
-| resourceBySearchUrl | *extraParameters* |  | Map
-| resourceBySearchUrl | *preferReturn* |  | PreferReturnEnum
-| resourceBySearchUrl | *resource* |  | IBaseResource
-| resourceBySearchUrl | *resourceAsString* |  | String
-| resourceBySearchUrl | *url* |  | String
+| resource | *extraParameters* | *Optional*   | Map
+| resource | *id* | *Optional*   | IIdType
+| resource | *preferReturn* | *Optional*   | PreferReturnEnum
+| resource | *resource* |   | IBaseResource
+| resource | *resourceAsString* |   | String
+| resource | *stringId* | *Optional*   | String
+| resourceBySearchUrl | *extraParameters* | *Optional*   | Map
+| resourceBySearchUrl | *preferReturn* | *Optional*   | PreferReturnEnum
+| resourceBySearchUrl | *resource* |   | IBaseResource
+| resourceBySearchUrl | *resourceAsString* |   | String
+| resourceBySearchUrl | *url* |   | String
 |===
 
 In addition to the parameters above, the update API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -284,18 +282,16 @@ The create API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| resource | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| resource | *preferReturn* | Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource() , may be null | PreferReturnEnum
-| resource | *resource* | The resource to create | IBaseResource
-| resource | *resourceAsString* | The resource to create | String
-| resource | *url* | The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366, may be null | String
+| resource | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| resource | *preferReturn* | *Optional*  Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource() , may be null | PreferReturnEnum
+| resource | *resource* |  The resource to create | IBaseResource
+| resource | *resourceAsString* |  The resource to create | String
+| resource | *url* | *Optional*  The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366, may be null | String
 |===
 
 In addition to the parameters above, the create API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -337,16 +333,14 @@ The validate API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| resource | *extraParameters* |  | Map
-| resource | *resource* |  | IBaseResource
-| resource | *resourceAsString* |  | String
+| resource | *extraParameters* | *Optional*   | Map
+| resource | *resource* |   | IBaseResource
+| resource | *resourceAsString* |   | String
 |===
 
 In addition to the parameters above, the validate API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -398,45 +392,43 @@ The operation API method(s) has the following set of parameters listed in the ta
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| onInstance | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| onInstance | *id* | Resource (version will be stripped) | IIdType
-| onInstance | *name* | Operation name | String
-| onInstance | *outputParameterType* | The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL | Class
-| onInstance | *parameters* | The parameters to use as input. May also be null if the operation does not require any input parameters. | IBaseParameters
-| onInstance | *returnType* | If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/\$everything) which return a bundle instead of a Parameters resource, may be NULL | Class
-| onInstance | *useHttpGet* | Use HTTP GET verb | Boolean
-| onInstanceVersion | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| onInstanceVersion | *id* | Resource version | IIdType
-| onInstanceVersion | *name* | Operation name | String
-| onInstanceVersion | *outputParameterType* | The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL | Class
-| onInstanceVersion | *parameters* | The parameters to use as input. May also be null if the operation does not require any input parameters. | IBaseParameters
-| onInstanceVersion | *returnType* | If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/\$everything) which return a bundle instead of a Parameters resource, may be NULL | Class
-| onInstanceVersion | *useHttpGet* | Use HTTP GET verb | Boolean
-| onServer | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| onServer | *name* | Operation name | String
-| onServer | *outputParameterType* | The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL | Class
-| onServer | *parameters* | The parameters to use as input. May also be null if the operation does not require any input parameters. | IBaseParameters
-| onServer | *returnType* | If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/\$everything) which return a bundle instead of a Parameters resource, may be NULL | Class
-| onServer | *useHttpGet* | Use HTTP GET verb | Boolean
-| onType | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| onType | *name* | Operation name | String
-| onType | *outputParameterType* | The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL | Class
-| onType | *parameters* | The parameters to use as input. May also be null if the operation does not require any input parameters. | IBaseParameters
-| onType | *resourceType* | The resource type to operate on | Class
-| onType | *returnType* | If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/\$everything) which return a bundle instead of a Parameters resource, may be NULL | Class
-| onType | *useHttpGet* | Use HTTP GET verb | Boolean
-| processMessage | *asynchronous* | Whether to process the message asynchronously or synchronously, defaults to synchronous. | Boolean
-| processMessage | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| processMessage | *msgBundle* | Set the Message Bundle to POST to the messaging server | IBaseBundle
-| processMessage | *respondToUri* | An optional query parameter indicating that responses from the receiving server should be sent to this URI, may be NULL | String
-| processMessage | *responseClass* | The response class | Class
+| onInstance | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| onInstance | *id* |  Resource (version will be stripped) | IIdType
+| onInstance | *name* |  Operation name | String
+| onInstance | *outputParameterType* | *Optional*  The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL | Class
+| onInstance | *parameters* | *Optional*  The parameters to use as input. May also be null if the operation does not require any input parameters. | IBaseParameters
+| onInstance | *returnType* | *Optional*  If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/\$everything) which return a bundle instead of a Parameters resource, may be NULL | Class
+| onInstance | *useHttpGet* |  Use HTTP GET verb | Boolean
+| onInstanceVersion | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| onInstanceVersion | *id* |  Resource version | IIdType
+| onInstanceVersion | *name* |  Operation name | String
+| onInstanceVersion | *outputParameterType* | *Optional*  The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL | Class
+| onInstanceVersion | *parameters* | *Optional*  The parameters to use as input. May also be null if the operation does not require any input parameters. | IBaseParameters
+| onInstanceVersion | *returnType* | *Optional*  If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/\$everything) which return a bundle instead of a Parameters resource, may be NULL | Class
+| onInstanceVersion | *useHttpGet* |  Use HTTP GET verb | Boolean
+| onServer | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| onServer | *name* |  Operation name | String
+| onServer | *outputParameterType* | *Optional*  The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL | Class
+| onServer | *parameters* | *Optional*  The parameters to use as input. May also be null if the operation does not require any input parameters. | IBaseParameters
+| onServer | *returnType* | *Optional*  If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/\$everything) which return a bundle instead of a Parameters resource, may be NULL | Class
+| onServer | *useHttpGet* |  Use HTTP GET verb | Boolean
+| onType | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| onType | *name* |  Operation name | String
+| onType | *outputParameterType* | *Optional*  The type to use for the output parameters (this should be set to Parameters.class drawn from the version of the FHIR structures you are using), may be NULL | Class
+| onType | *parameters* | *Optional*  The parameters to use as input. May also be null if the operation does not require any input parameters. | IBaseParameters
+| onType | *resourceType* |  The resource type to operate on | Class
+| onType | *returnType* | *Optional*  If this operation returns a single resource body as its return type instead of a Parameters resource, use this method to specify that resource type. This is useful for certain operations (e.g. Patient/NNN/\$everything) which return a bundle instead of a Parameters resource, may be NULL | Class
+| onType | *useHttpGet* |  Use HTTP GET verb | Boolean
+| processMessage | *asynchronous* |  Whether to process the message asynchronously or synchronously, defaults to synchronous. | Boolean
+| processMessage | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| processMessage | *msgBundle* |  Set the Message Bundle to POST to the messaging server | IBaseBundle
+| processMessage | *respondToUri* | *Optional*  An optional query parameter indicating that responses from the receiving server should be sent to this URI, may be NULL | String
+| processMessage | *responseClass* |  The response class | Class
 |===
 
 In addition to the parameters above, the operation API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -476,15 +468,13 @@ The search API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| searchByUrl | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| searchByUrl | *url* | The URL to search for. Note that this URL may be complete (e.g. \http://example.com/base/Patientname=foo) in which case the client's base URL will be ignored. Or it can be relative (e.g. Patientname=foo) in which case the client's base URL will be used. | String
+| searchByUrl | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| searchByUrl | *url* |  The URL to search for. Note that this URL may be complete (e.g. \http://example.com/base/Patientname=foo) in which case the client's base URL will be ignored. Or it can be relative (e.g. Patientname=foo) in which case the client's base URL will be used. | String
 |===
 
 In addition to the parameters above, the search API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -524,15 +514,13 @@ The capabilities API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| ofType | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| ofType | *type* | The model type | Class
+| ofType | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| ofType | *type* |  The model type | Class
 |===
 
 In addition to the parameters above, the capabilities API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -577,22 +565,20 @@ The patch API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| patchById | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| patchById | *id* | The resource ID to patch | IIdType
-| patchById | *patchBody* | The body of the patch document serialized in either XML or JSON which conforms to \http://jsonpatch.com/ or \http://tools.ietf.org/html/rfc5261 | String
-| patchById | *preferReturn* | Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource() | PreferReturnEnum
-| patchById | *stringId* | The resource ID to patch | String
-| patchByUrl | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| patchByUrl | *patchBody* | The body of the patch document serialized in either XML or JSON which conforms to \http://jsonpatch.com/ or \http://tools.ietf.org/html/rfc5261 | String
-| patchByUrl | *preferReturn* | Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource() | PreferReturnEnum
-| patchByUrl | *url* | The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366 | String
+| patchById | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| patchById | *id* |  The resource ID to patch | IIdType
+| patchById | *patchBody* |  The body of the patch document serialized in either XML or JSON which conforms to \http://jsonpatch.com/ or \http://tools.ietf.org/html/rfc5261 | String
+| patchById | *preferReturn* | *Optional*  Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource() | PreferReturnEnum
+| patchById | *stringId* |  The resource ID to patch | String
+| patchByUrl | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| patchByUrl | *patchBody* |  The body of the patch document serialized in either XML or JSON which conforms to \http://jsonpatch.com/ or \http://tools.ietf.org/html/rfc5261 | String
+| patchByUrl | *preferReturn* | *Optional*  Add a Prefer header to the request, which requests that the server include or suppress the resource body as a part of the result. If a resource is returned by the server it will be parsed an accessible to the client via MethodOutcome#getResource() | PreferReturnEnum
+| patchByUrl | *url* |  The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366 | String
 |===
 
 In addition to the parameters above, the patch API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -644,27 +630,25 @@ The meta API method(s) has the following set of parameters listed in the table b
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| add | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| add | *id* | The id | IIdType
-| add | *meta* | The IBaseMetaType class | IBaseMetaType
-| delete | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| delete | *id* | The id | IIdType
-| delete | *meta* | The IBaseMetaType class | IBaseMetaType
-| getFromResource | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| getFromResource | *id* | The id | IIdType
-| getFromResource | *metaType* | The IBaseMetaType class | Class
-| getFromServer | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| getFromServer | *metaType* | The type of the meta datatype for the given FHIR model version (should be MetaDt.class or MetaType.class) | Class
-| getFromType | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| getFromType | *metaType* | The IBaseMetaType class | Class
-| getFromType | *resourceType* | The resource type e.g Patient | String
+| add | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| add | *id* |  The id | IIdType
+| add | *meta* |  The IBaseMetaType class | IBaseMetaType
+| delete | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| delete | *id* |  The id | IIdType
+| delete | *meta* |  The IBaseMetaType class | IBaseMetaType
+| getFromResource | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| getFromResource | *id* |  The id | IIdType
+| getFromResource | *metaType* |  The IBaseMetaType class | Class
+| getFromServer | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| getFromServer | *metaType* |  The type of the meta datatype for the given FHIR model version (should be MetaDt.class or MetaType.class) | Class
+| getFromType | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| getFromType | *metaType* |  The IBaseMetaType class | Class
+| getFromType | *resourceType* |  The resource type e.g Patient | String
 |===
 
 In addition to the parameters above, the meta API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -710,30 +694,28 @@ The history API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| onInstance | *count* | Request that the server return only up to theCount number of resources, may be NULL | Integer
-| onInstance | *cutoff* | Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | Date
-| onInstance | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| onInstance | *iCutoff* | Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | IPrimitiveType
-| onInstance | *id* | The IIdType which must be populated with both a resource type and a resource ID at | IIdType
-| onInstance | *returnType* | Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server. | Class
-| onServer | *count* | Request that the server return only up to theCount number of resources, may be NULL | Integer
-| onServer | *cutoff* | Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | Date
-| onServer | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| onServer | *iCutoff* | Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | IPrimitiveType
-| onServer | *returnType* | Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server. | Class
-| onType | *count* | Request that the server return only up to theCount number of resources, may be NULL | Integer
-| onType | *cutoff* | Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | Date
-| onType | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| onType | *iCutoff* | Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | IPrimitiveType
-| onType | *resourceType* | The resource type to search for | Class
-| onType | *returnType* | Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server. | Class
+| onInstance | *count* | *Optional*  Request that the server return only up to theCount number of resources, may be NULL | Integer
+| onInstance | *cutoff* | *Optional*  Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | Date
+| onInstance | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| onInstance | *iCutoff* | *Optional*  Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | IPrimitiveType
+| onInstance | *id* |  The IIdType which must be populated with both a resource type and a resource ID at | IIdType
+| onInstance | *returnType* |  Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server. | Class
+| onServer | *count* | *Optional*  Request that the server return only up to theCount number of resources, may be NULL | Integer
+| onServer | *cutoff* | *Optional*  Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | Date
+| onServer | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| onServer | *iCutoff* | *Optional*  Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | IPrimitiveType
+| onServer | *returnType* |  Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server. | Class
+| onType | *count* | *Optional*  Request that the server return only up to theCount number of resources, may be NULL | Integer
+| onType | *cutoff* | *Optional*  Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | Date
+| onType | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| onType | *iCutoff* | *Optional*  Request that the server return only resource versions that were created at or after the given time (inclusive), may be NULL | IPrimitiveType
+| onType | *resourceType* |  The resource type to search for | Class
+| onType | *returnType* |  Request that the method return a Bundle resource (such as ca.uhn.fhir.model.dstu2.resource.Bundle). Use this method if you are accessing a DSTU2 server. | Class
 |===
 
 In addition to the parameters above, the history API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -779,20 +761,18 @@ The load-page API method(s) has the following set of parameters listed in the ta
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| byUrl | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| byUrl | *returnType* | The return type | Class
-| byUrl | *url* | The search url | String
-| next | *bundle* | The IBaseBundle | IBaseBundle
-| next | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| previous | *bundle* | The IBaseBundle | IBaseBundle
-| previous | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| byUrl | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| byUrl | *returnType* |  The return type | Class
+| byUrl | *url* |  The search url | String
+| next | *bundle* |  The IBaseBundle | IBaseBundle
+| next | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| previous | *bundle* |  The IBaseBundle | IBaseBundle
+| previous | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
 |===
 
 In addition to the parameters above, the load-page API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -837,18 +817,16 @@ The transaction API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| withBundle | *bundle* | Bundle to use in the transaction | IBaseBundle
-| withBundle | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| withBundle | *stringBundle* | Bundle to use in the transaction | String
-| withResources | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| withResources | *resources* | Resources to use in the transaction | List
+| withBundle | *bundle* |  Bundle to use in the transaction | IBaseBundle
+| withBundle | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| withBundle | *stringBundle* |  Bundle to use in the transaction | String
+| withResources | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| withResources | *resources* |  Resources to use in the transaction | List
 |===
 
 In addition to the parameters above, the transaction API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -907,33 +885,31 @@ The read API method(s) has the following set of parameters listed in the table b
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| resourceById | *extraParameters* |  | Map
-| resourceById | *id* |  | IIdType
-| resourceById | *ifVersionMatches* |  | String
-| resourceById | *longId* |  | Long
-| resourceById | *resource* |  | Class
-| resourceById | *resourceClass* |  | String
-| resourceById | *returnNull* |  | Boolean
-| resourceById | *returnResource* |  | IBaseResource
-| resourceById | *stringId* |  | String
-| resourceById | *throwError* |  | Boolean
-| resourceById | *version* |  | String
-| resourceByUrl | *extraParameters* |  | Map
-| resourceByUrl | *iUrl* |  | IIdType
-| resourceByUrl | *ifVersionMatches* |  | String
-| resourceByUrl | *resource* |  | Class
-| resourceByUrl | *resourceClass* |  | String
-| resourceByUrl | *returnNull* |  | Boolean
-| resourceByUrl | *returnResource* |  | IBaseResource
-| resourceByUrl | *throwError* |  | Boolean
-| resourceByUrl | *url* |  | String
+| resourceById | *extraParameters* | *Optional*   | Map
+| resourceById | *id* |   | IIdType
+| resourceById | *ifVersionMatches* | *Optional*   | String
+| resourceById | *longId* |   | Long
+| resourceById | *resource* |   | Class
+| resourceById | *resourceClass* |   | String
+| resourceById | *returnNull* | *Optional*   | Boolean
+| resourceById | *returnResource* | *Optional*   | IBaseResource
+| resourceById | *stringId* |   | String
+| resourceById | *throwError* | *Optional*   | Boolean
+| resourceById | *version* | *Optional*   | String
+| resourceByUrl | *extraParameters* | *Optional*   | Map
+| resourceByUrl | *iUrl* |   | IIdType
+| resourceByUrl | *ifVersionMatches* | *Optional*   | String
+| resourceByUrl | *resource* |   | Class
+| resourceByUrl | *resourceClass* |   | String
+| resourceByUrl | *returnNull* | *Optional*   | Boolean
+| resourceByUrl | *returnResource* | *Optional*   | IBaseResource
+| resourceByUrl | *throwError* | *Optional*   | Boolean
+| resourceByUrl | *url* |   | String
 |===
 
 In addition to the parameters above, the read API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -981,21 +957,19 @@ The delete API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| resource | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| resource | *resource* | The IBaseResource to delete | IBaseResource
-| resourceById | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| resourceById | *id* | The IIdType referencing the resource | IIdType
-| resourceById | *stringId* | It's id | String
-| resourceById | *type* | The resource type e.g Patient | String
-| resourceConditionalByUrl | *extraParameters* | See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
-| resourceConditionalByUrl | *url* | The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366 | String
+| resource | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| resource | *resource* |  The IBaseResource to delete | IBaseResource
+| resourceById | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| resourceById | *id* |  The IIdType referencing the resource | IIdType
+| resourceById | *stringId* |  It's id | String
+| resourceById | *type* |  The resource type e.g Patient | String
+| resourceConditionalByUrl | *extraParameters* | *Optional*  See ExtraParameters for a full list of parameters that can be passed, may be NULL | Map
+| resourceConditionalByUrl | *url* |  The search URL to use. The format of this URL should be of the form ResourceTypeParameters, for example: Patientname=Smith&amp;identifier=13.2.4.11.4%7C847366 | String
 |===
 
 In addition to the parameters above, the delete API can also use from the 46 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelFhir.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarAclEndpointConfiguration.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarAclEndpointConfiguration.java
index 792c21f..37267d1 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarAclEndpointConfiguration.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarAclEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CalendarAclEndpointConfiguration extends GoogleCalendarConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ApiMethod(methodName = "get", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @Ap [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ApiMethod(methodName = "get", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the prima [...]
     private String calendarId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.calendar.model.AclRule"), @ApiMethod(methodName = "patch", description="The com.google.api.services.calendar.model.AclRule"), @ApiMethod(methodName = "update", description="The com.google.api.services.calendar.model.AclRule")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.calendar.model.AclRule"), @ApiMethod(methodName = "patch", description="The com.google.api.services.calendar.model.AclRule"), @ApiMethod(methodName = "update", description="The com.google.api.services.calendar.model.AclRule")})
     private com.google.api.services.calendar.model.AclRule content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.calendar.model.Channel")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.calendar.model.Channel")})
     private com.google.api.services.calendar.model.Channel contentChannel;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="ACL rule identifier"), @ApiMethod(methodName = "get", description="ACL rule identifier"), @ApiMethod(methodName = "patch", description="ACL rule identifier"), @ApiMethod(methodName = "update", description="ACL rule identifier")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="ACL rule identifier"), @ApiMethod(methodName = "get", description="ACL rule identifier"), @ApiMethod(methodName = "patch", description="ACL rule identifier"), @ApiMethod(methodName = "update", description="ACL rule identifier")})
     private String ruleId;
 
     public String getCalendarId() {
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarCalendarListEndpointConfiguration.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarCalendarListEndpointConfiguration.java
index 099377f..41ef8e5 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarCalendarListEndpointConfiguration.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarCalendarListEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CalendarCalendarListEndpointConfiguration extends GoogleCalendarConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ApiMethod(methodName = "get", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @Ap [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ApiMethod(methodName = "get", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the prima [...]
     private String calendarId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.calendar.model.CalendarListEntry"), @ApiMethod(methodName = "patch", description="The com.google.api.services.calendar.model.CalendarListEntry"), @ApiMethod(methodName = "update", description="The com.google.api.services.calendar.model.CalendarListEntry")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.calendar.model.CalendarListEntry"), @ApiMethod(methodName = "patch", description="The com.google.api.services.calendar.model.CalendarListEntry"), @ApiMethod(methodName = "update", description="The com.google.api.services.calendar.model.CalendarListEntry")})
     private com.google.api.services.calendar.model.CalendarListEntry content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.calendar.model.Channel")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.calendar.model.Channel")})
     private com.google.api.services.calendar.model.Channel contentChannel;
 
     public String getCalendarId() {
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarCalendarsEndpointConfiguration.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarCalendarsEndpointConfiguration.java
index 7376253..f72d7b3 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarCalendarsEndpointConfiguration.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarCalendarsEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CalendarCalendarsEndpointConfiguration extends GoogleCalendarConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "clear", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ApiMethod(methodName = "delete", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "clear", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ApiMethod(methodName = "delete", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the pri [...]
     private String calendarId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.calendar.model.Calendar"), @ApiMethod(methodName = "patch", description="The com.google.api.services.calendar.model.Calendar"), @ApiMethod(methodName = "update", description="The com.google.api.services.calendar.model.Calendar")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.calendar.model.Calendar"), @ApiMethod(methodName = "patch", description="The com.google.api.services.calendar.model.Calendar"), @ApiMethod(methodName = "update", description="The com.google.api.services.calendar.model.Calendar")})
     private com.google.api.services.calendar.model.Calendar content;
 
     public String getCalendarId() {
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarChannelsEndpointConfiguration.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarChannelsEndpointConfiguration.java
index be497e2..2575b99 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarChannelsEndpointConfiguration.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarChannelsEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CalendarChannelsEndpointConfiguration extends GoogleCalendarConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "stop", description="The com.google.api.services.calendar.model.Channel")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "stop", description="The com.google.api.services.calendar.model.Channel")})
     private com.google.api.services.calendar.model.Channel contentChannel;
 
     public com.google.api.services.calendar.model.Channel getContentChannel() {
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarEventsEndpointConfiguration.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarEventsEndpointConfiguration.java
index 5509901..58e7b86 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarEventsEndpointConfiguration.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarEventsEndpointConfiguration.java
@@ -20,22 +20,22 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CalendarEventsEndpointConfiguration extends GoogleCalendarConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "calendarImport", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ApiMethod(methodName = "delete", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyw [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "calendarImport", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword."), @ApiMethod(methodName = "delete", description="Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, us [...]
     private String calendarId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "calendarImport", description="The com.google.api.services.calendar.model.Event"), @ApiMethod(methodName = "insert", description="The com.google.api.services.calendar.model.Event"), @ApiMethod(methodName = "patch", description="The com.google.api.services.calendar.model.Event"), @ApiMethod(methodName = "update", description="The com.google.api.services.calendar.model.Event")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "calendarImport", description="The com.google.api.services.calendar.model.Event"), @ApiMethod(methodName = "insert", description="The com.google.api.services.calendar.model.Event"), @ApiMethod(methodName = "patch", description="The com.google.api.services.calendar.model.Event"), @ApiMethod(methodName = "update", description="The com.google.api.services.calendar.model.Event")})
     private com.google.api.services.calendar.model.Event content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.calendar.model.Channel")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.calendar.model.Channel")})
     private com.google.api.services.calendar.model.Channel contentChannel;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "move", description="Calendar identifier of the target calendar where the event is to be moved to")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "move", description="Calendar identifier of the target calendar where the event is to be moved to")})
     private String destination;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="Event identifier"), @ApiMethod(methodName = "get", description="Event identifier"), @ApiMethod(methodName = "instances", description="Recurring event identifier"), @ApiMethod(methodName = "move", description="Event identifier"), @ApiMethod(methodName = "patch", description="Event identifier"), @ApiMethod(methodName = "update", description="Event identifier")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="Event identifier"), @ApiMethod(methodName = "get", description="Event identifier"), @ApiMethod(methodName = "instances", description="Recurring event identifier"), @ApiMethod(methodName = "move", description="Event identifier"), @ApiMethod(methodName = "patch", description="Event identifier"), @ApiMethod(methodName = "update", description="Event identifier")})
     private String eventId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "quickAdd", description="The text describing the event to be created")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "quickAdd", description="The text describing the event to be created")})
     private String text;
 
     public String getCalendarId() {
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarFreebusyEndpointConfiguration.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarFreebusyEndpointConfiguration.java
index c9bfc28..0d0f4f9 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarFreebusyEndpointConfiguration.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarFreebusyEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CalendarFreebusyEndpointConfiguration extends GoogleCalendarConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "query", description="The com.google.api.services.calendar.model.FreeBusyRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "query", description="The com.google.api.services.calendar.model.FreeBusyRequest")})
     private com.google.api.services.calendar.model.FreeBusyRequest content;
 
     public com.google.api.services.calendar.model.FreeBusyRequest getContent() {
diff --git a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarSettingsEndpointConfiguration.java b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarSettingsEndpointConfiguration.java
index b87be29..8ceca75 100644
--- a/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarSettingsEndpointConfiguration.java
+++ b/components/camel-google-calendar/src/generated/java/org/apache/camel/component/google/calendar/CalendarSettingsEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CalendarSettingsEndpointConfiguration extends GoogleCalendarConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.calendar.model.Channel")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.calendar.model.Channel")})
     private com.google.api.services.calendar.model.Channel contentChannel;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "get", description="The id of the user setting")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "get", description="The id of the user setting")})
     private String setting;
 
     public com.google.api.services.calendar.model.Channel getContentChannel() {
diff --git a/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/google-calendar.json b/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/google-calendar.json
index 43c9bc2..f7f0f34 100644
--- a/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/google-calendar.json
+++ b/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/google-calendar.json
@@ -84,12 +84,12 @@
     "list": { "methods": { "delete": { "description": "Deletes an entry on the user's calendar list", "signatures": [ "com.google.api.services.calendar.Calendar$CalendarList$Delete delete(String calendarId)" ] }, "get": { "description": "Returns an entry on the user's calendar list", "signatures": [ "com.google.api.services.calendar.Calendar$CalendarList$Get get(String calendarId)" ] }, "insert": { "description": "Adds an entry to the user's calendar list", "signatures": [ "com.google.ap [...]
   },
   "apiProperties": {
-    "settings": { "methods": { "get": { "properties": { "setting": { "kind": "parameter", "displayName": "Setting", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the user setting" } } }, "watch": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "object", "javaType": "co [...]
-    "freebusy": { "methods": { "query": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.FreeBusyRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.calendar.model.FreeBusyRequest" } } } } },
-    "events": { "methods": { "calendarImport": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword." }, "content": { "kind" [...]
-    "channels": { "methods": { "stop": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Channel", "deprecated": false, "secret": false, "description": "The com.google.api.services.calendar.model.Channel" } } } } },
-    "acl": { "methods": { "delete": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword." }, "ruleId": { "kind": "parameter [...]
-    "calendars": { "methods": { "clear": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword." } } }, "delete": { "properti [...]
-    "list": { "methods": { "delete": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword." } } }, "get": { "properties": {  [...]
+    "settings": { "methods": { "get": { "properties": { "setting": { "kind": "parameter", "displayName": "Setting", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the user setting", "optional": false } } }, "watch": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "objec [...]
+    "freebusy": { "methods": { "query": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.FreeBusyRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.calendar.model.FreeBusyRequest", "optional": false } } } } },
+    "events": { "methods": { "calendarImport": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.", "optional": false },  [...]
+    "channels": { "methods": { "stop": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Channel", "deprecated": false, "secret": false, "description": "The com.google.api.services.calendar.model.Channel", "optional": false } } } } },
+    "acl": { "methods": { "delete": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.", "optional": false }, "ruleId": { [...]
+    "calendars": { "methods": { "clear": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.", "optional": false } } }, "d [...]
+    "list": { "methods": { "delete": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.", "optional": false } } }, "get": [...]
   }
 }
diff --git a/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/stream/google-calendar-stream.json b/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/stream/google-calendar-stream.json
index cfb4347..0e0900f 100644
--- a/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/stream/google-calendar-stream.json
+++ b/components/camel-google-calendar/src/generated/resources/org/apache/camel/component/google/calendar/stream/google-calendar-stream.json
@@ -84,12 +84,12 @@
     "list": { "methods": { "delete": { "description": "Deletes an entry on the user's calendar list", "signatures": [ "com.google.api.services.calendar.Calendar$CalendarList$Delete delete(String calendarId)" ] }, "get": { "description": "Returns an entry on the user's calendar list", "signatures": [ "com.google.api.services.calendar.Calendar$CalendarList$Get get(String calendarId)" ] }, "insert": { "description": "Adds an entry to the user's calendar list", "signatures": [ "com.google.ap [...]
   },
   "apiProperties": {
-    "settings": { "methods": { "get": { "properties": { "setting": { "kind": "parameter", "displayName": "Setting", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the user setting" } } }, "watch": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": [...]
-    "freebusy": { "methods": { "query": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.FreeBusyRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.calendar.model.FreeBusyRequest" } } } } },
-    "events": { "methods": { "calendarImport": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword." }, "content": { "kin [...]
-    "channels": { "methods": { "stop": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Channel", "deprecated": false, "secret": false, "description": "The com.google.api.services.calendar.model.Channel" } } } } },
-    "acl": { "methods": { "delete": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword." }, "ruleId": { "kind": "paramet [...]
-    "calendars": { "methods": { "clear": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword." } } }, "delete": { "proper [...]
-    "list": { "methods": { "delete": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword." } } }, "get": { "properties":  [...]
+    "settings": { "methods": { "get": { "properties": { "setting": { "kind": "parameter", "displayName": "Setting", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the user setting", "optional": false } } }, "watch": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "consumer", "label": "", "required": false, "type": "o [...]
+    "freebusy": { "methods": { "query": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.FreeBusyRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.calendar.model.FreeBusyRequest", "optional": false } } } } },
+    "events": { "methods": { "calendarImport": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.", "optional": false } [...]
+    "channels": { "methods": { "stop": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Channel", "deprecated": false, "secret": false, "description": "The com.google.api.services.calendar.model.Channel", "optional": false } } } } },
+    "acl": { "methods": { "delete": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.", "optional": false }, "ruleId": [...]
+    "calendars": { "methods": { "clear": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.", "optional": false } } },  [...]
+    "list": { "methods": { "delete": { "properties": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.", "optional": false } } }, "get [...]
   }
 }
diff --git a/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc b/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
index 33f574c..6f1c71f 100644
--- a/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
+++ b/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
@@ -188,15 +188,13 @@ The settings API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| get | *setting* | The id of the user setting | String
-| watch | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| get | *setting* |  The id of the user setting | String
+| watch | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the settings API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendar.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -236,14 +234,12 @@ The freebusy API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| query | *content* | The com.google.api.services.calendar.model.FreeBusyRequest | FreeBusyRequest
+| query | *content* |  The com.google.api.services.calendar.model.FreeBusyRequest | FreeBusyRequest
 |===
 
 In addition to the parameters above, the freebusy API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendar.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -313,37 +309,35 @@ The events API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| calendarImport | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| calendarImport | *content* | The com.google.api.services.calendar.model.Event | Event
-| delete | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| delete | *eventId* | Event identifier | String
-| get | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| get | *eventId* | Event identifier | String
-| insert | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| insert | *content* | The com.google.api.services.calendar.model.Event | Event
-| instances | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| instances | *eventId* | Recurring event identifier | String
-| list | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| move | *calendarId* | Calendar identifier of the source calendar where the event currently is on | String
-| move | *destination* | Calendar identifier of the target calendar where the event is to be moved to | String
-| move | *eventId* | Event identifier | String
-| patch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *content* | The com.google.api.services.calendar.model.Event | Event
-| patch | *eventId* | Event identifier | String
-| quickAdd | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| quickAdd | *text* | The text describing the event to be created | String
-| update | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| update | *content* | The com.google.api.services.calendar.model.Event | Event
-| update | *eventId* | Event identifier | String
-| watch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| watch | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| calendarImport | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| calendarImport | *content* |  The com.google.api.services.calendar.model.Event | Event
+| delete | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| delete | *eventId* |  Event identifier | String
+| get | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| get | *eventId* |  Event identifier | String
+| insert | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| insert | *content* |  The com.google.api.services.calendar.model.Event | Event
+| instances | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| instances | *eventId* |  Recurring event identifier | String
+| list | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| move | *calendarId* |  Calendar identifier of the source calendar where the event currently is on | String
+| move | *destination* |  Calendar identifier of the target calendar where the event is to be moved to | String
+| move | *eventId* |  Event identifier | String
+| patch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *content* |  The com.google.api.services.calendar.model.Event | Event
+| patch | *eventId* |  Event identifier | String
+| quickAdd | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| quickAdd | *text* |  The text describing the event to be created | String
+| update | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| update | *content* |  The com.google.api.services.calendar.model.Event | Event
+| update | *eventId* |  Event identifier | String
+| watch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| watch | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the events API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendar.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -383,14 +377,12 @@ The channels API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| stop | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| stop | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the channels API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendar.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -448,28 +440,26 @@ The acl API method(s) has the following set of parameters listed in the table be
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| delete | *ruleId* | ACL rule identifier | String
-| get | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| get | *ruleId* | ACL rule identifier | String
-| insert | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| insert | *content* | The com.google.api.services.calendar.model.AclRule | AclRule
-| list | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *content* | The com.google.api.services.calendar.model.AclRule | AclRule
-| patch | *ruleId* | ACL rule identifier | String
-| update | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| update | *content* | The com.google.api.services.calendar.model.AclRule | AclRule
-| update | *ruleId* | ACL rule identifier | String
-| watch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| watch | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| delete | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| delete | *ruleId* |  ACL rule identifier | String
+| get | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| get | *ruleId* |  ACL rule identifier | String
+| insert | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| insert | *content* |  The com.google.api.services.calendar.model.AclRule | AclRule
+| list | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *content* |  The com.google.api.services.calendar.model.AclRule | AclRule
+| patch | *ruleId* |  ACL rule identifier | String
+| update | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| update | *content* |  The com.google.api.services.calendar.model.AclRule | AclRule
+| update | *ruleId* |  ACL rule identifier | String
+| watch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| watch | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the acl API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendar.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -524,21 +514,19 @@ The calendars API method(s) has the following set of parameters listed in the ta
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| clear | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| delete | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| get | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| insert | *content* | The com.google.api.services.calendar.model.Calendar | Calendar
-| patch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *content* | The com.google.api.services.calendar.model.Calendar | Calendar
-| update | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| update | *content* | The com.google.api.services.calendar.model.Calendar | Calendar
+| clear | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| delete | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| get | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| insert | *content* |  The com.google.api.services.calendar.model.Calendar | Calendar
+| patch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *content* |  The com.google.api.services.calendar.model.Calendar | Calendar
+| update | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| update | *content* |  The com.google.api.services.calendar.model.Calendar | Calendar
 |===
 
 In addition to the parameters above, the calendars API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendar.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -593,21 +581,19 @@ The list API method(s) has the following set of parameters listed in the table b
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| get | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| insert | *content* | The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
-| patch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *content* | The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
-| update | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| update | *content* | The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
-| watch | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| delete | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| get | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| insert | *content* |  The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
+| patch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *content* |  The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
+| update | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| update | *content* |  The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
+| watch | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the list API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendar.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
diff --git a/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc b/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
index bf7ef9d..96aa54b 100644
--- a/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
+++ b/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
@@ -191,15 +191,13 @@ The settings API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| get | *setting* | The id of the user setting | String
-| watch | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| get | *setting* |  The id of the user setting | String
+| watch | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the settings API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendarStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -239,14 +237,12 @@ The freebusy API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| query | *content* | The com.google.api.services.calendar.model.FreeBusyRequest | FreeBusyRequest
+| query | *content* |  The com.google.api.services.calendar.model.FreeBusyRequest | FreeBusyRequest
 |===
 
 In addition to the parameters above, the freebusy API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendarStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -316,37 +312,35 @@ The events API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| calendarImport | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| calendarImport | *content* | The com.google.api.services.calendar.model.Event | Event
-| delete | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| delete | *eventId* | Event identifier | String
-| get | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| get | *eventId* | Event identifier | String
-| insert | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| insert | *content* | The com.google.api.services.calendar.model.Event | Event
-| instances | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| instances | *eventId* | Recurring event identifier | String
-| list | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| move | *calendarId* | Calendar identifier of the source calendar where the event currently is on | String
-| move | *destination* | Calendar identifier of the target calendar where the event is to be moved to | String
-| move | *eventId* | Event identifier | String
-| patch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *content* | The com.google.api.services.calendar.model.Event | Event
-| patch | *eventId* | Event identifier | String
-| quickAdd | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| quickAdd | *text* | The text describing the event to be created | String
-| update | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| update | *content* | The com.google.api.services.calendar.model.Event | Event
-| update | *eventId* | Event identifier | String
-| watch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| watch | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| calendarImport | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| calendarImport | *content* |  The com.google.api.services.calendar.model.Event | Event
+| delete | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| delete | *eventId* |  Event identifier | String
+| get | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| get | *eventId* |  Event identifier | String
+| insert | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| insert | *content* |  The com.google.api.services.calendar.model.Event | Event
+| instances | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| instances | *eventId* |  Recurring event identifier | String
+| list | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| move | *calendarId* |  Calendar identifier of the source calendar where the event currently is on | String
+| move | *destination* |  Calendar identifier of the target calendar where the event is to be moved to | String
+| move | *eventId* |  Event identifier | String
+| patch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *content* |  The com.google.api.services.calendar.model.Event | Event
+| patch | *eventId* |  Event identifier | String
+| quickAdd | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| quickAdd | *text* |  The text describing the event to be created | String
+| update | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| update | *content* |  The com.google.api.services.calendar.model.Event | Event
+| update | *eventId* |  Event identifier | String
+| watch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| watch | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the events API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendarStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -386,14 +380,12 @@ The channels API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| stop | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| stop | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the channels API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendarStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -451,28 +443,26 @@ The acl API method(s) has the following set of parameters listed in the table be
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| delete | *ruleId* | ACL rule identifier | String
-| get | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| get | *ruleId* | ACL rule identifier | String
-| insert | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| insert | *content* | The com.google.api.services.calendar.model.AclRule | AclRule
-| list | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *content* | The com.google.api.services.calendar.model.AclRule | AclRule
-| patch | *ruleId* | ACL rule identifier | String
-| update | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| update | *content* | The com.google.api.services.calendar.model.AclRule | AclRule
-| update | *ruleId* | ACL rule identifier | String
-| watch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| watch | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| delete | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| delete | *ruleId* |  ACL rule identifier | String
+| get | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| get | *ruleId* |  ACL rule identifier | String
+| insert | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| insert | *content* |  The com.google.api.services.calendar.model.AclRule | AclRule
+| list | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *content* |  The com.google.api.services.calendar.model.AclRule | AclRule
+| patch | *ruleId* |  ACL rule identifier | String
+| update | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| update | *content* |  The com.google.api.services.calendar.model.AclRule | AclRule
+| update | *ruleId* |  ACL rule identifier | String
+| watch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| watch | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the acl API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendarStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -527,21 +517,19 @@ The calendars API method(s) has the following set of parameters listed in the ta
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| clear | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| delete | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| get | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| insert | *content* | The com.google.api.services.calendar.model.Calendar | Calendar
-| patch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *content* | The com.google.api.services.calendar.model.Calendar | Calendar
-| update | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| update | *content* | The com.google.api.services.calendar.model.Calendar | Calendar
+| clear | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| delete | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| get | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| insert | *content* |  The com.google.api.services.calendar.model.Calendar | Calendar
+| patch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *content* |  The com.google.api.services.calendar.model.Calendar | Calendar
+| update | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| update | *content* |  The com.google.api.services.calendar.model.Calendar | Calendar
 |===
 
 In addition to the parameters above, the calendars API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendarStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -596,21 +584,19 @@ The list API method(s) has the following set of parameters listed in the table b
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| get | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| insert | *content* | The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
-| patch | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| patch | *content* | The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
-| update | *calendarId* | Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
-| update | *content* | The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
-| watch | *contentChannel* | The com.google.api.services.calendar.model.Channel | Channel
+| delete | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| get | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| insert | *content* |  The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
+| patch | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| patch | *content* |  The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
+| update | *calendarId* |  Calendar identifier. To retrieve calendar IDs call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword. | String
+| update | *content* |  The com.google.api.services.calendar.model.CalendarListEntry | CalendarListEntry
+| watch | *contentChannel* |  The com.google.api.services.calendar.model.Channel | Channel
 |===
 
 In addition to the parameters above, the list API can also use from the 32 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelGoogleCalendarStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAppsEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAppsEndpointConfiguration.java
index 73a5e2d..c5cba89 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAppsEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveAppsEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveAppsEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "get", description="The ID of the app")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "get", description="The ID of the app")})
     private String appId;
 
     public String getAppId() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfiguration.java
index cb3d098..3011cf3 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChangesEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveChangesEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "get", description="The ID of the change")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "get", description="The ID of the change")})
     private String changeId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.drive.model.Channel")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.drive.model.Channel")})
     private com.google.api.services.drive.model.Channel contentChannel;
 
     public String getChangeId() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfiguration.java
index aee7285..12e613a 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChannelsEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveChannelsEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "stop", description="The com.google.api.services.drive.model.Channel")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "stop", description="The com.google.api.services.drive.model.Channel")})
     private com.google.api.services.drive.model.Channel contentChannel;
 
     public com.google.api.services.drive.model.Channel getContentChannel() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChildrenEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChildrenEndpointConfiguration.java
index e142470..b48cd1e 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChildrenEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveChildrenEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveChildrenEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the child"), @ApiMethod(methodName = "get", description="The ID of the child")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the child"), @ApiMethod(methodName = "get", description="The ID of the child")})
     private String childId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.ChildReference")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.ChildReference")})
     private com.google.api.services.drive.model.ChildReference content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the folder"), @ApiMethod(methodName = "get", description="The ID of the folder"), @ApiMethod(methodName = "insert", description="The ID of the folder"), @ApiMethod(methodName = "list", description="The ID of the folder")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the folder"), @ApiMethod(methodName = "get", description="The ID of the folder"), @ApiMethod(methodName = "insert", description="The ID of the folder"), @ApiMethod(methodName = "list", description="The ID of the folder")})
     private String folderId;
 
     public String getChildId() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfiguration.java
index 5e17f9d..0b42219 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveCommentsEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveCommentsEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the comment"), @ApiMethod(methodName = "get", description="The ID of the comment"), @ApiMethod(methodName = "patch", description="The ID of the comment"), @ApiMethod(methodName = "update", description="The ID of the comment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the comment"), @ApiMethod(methodName = "get", description="The ID of the comment"), @ApiMethod(methodName = "patch", description="The ID of the comment"), @ApiMethod(methodName = "update", description="The ID of the comment")})
     private String commentId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.Comment"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.Comment"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.Comment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.Comment"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.Comment"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.Comment")})
     private com.google.api.services.drive.model.Comment content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "insert", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file"), @ApiMethod(methodName = "patch", description="The ID of the file"), @ApiMethod(methodName = "update", description="The ID of the file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "insert", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file"), @ApiMethod(methodName = "patch", description="The ID of the file"), @ApiMethod(methodName = "update", description="The ID of the file")})
     private String fileId;
 
     public String getCommentId() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfiguration.java
index 93d1fb6..dbd5935 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveFilesEndpointConfiguration.java
@@ -20,19 +20,19 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveFilesEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "copy", description="The com.google.api.services.drive.model.File"), @ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.File media metadata or null if none"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.File"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.File media metadata or null if none")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "copy", description="The com.google.api.services.drive.model.File"), @ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.File media metadata or null if none"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.File"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.File media metadata or null if none")})
     private com.google.api.services.drive.model.File content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.drive.model.Channel")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.drive.model.Channel")})
     private com.google.api.services.drive.model.Channel contentChannel;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "copy", description="The ID of the file to copy"), @ApiMethod(methodName = "delete", description="The ID of the file to delete"), @ApiMethod(methodName = "export", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID for the file in question"), @ApiMethod(methodName = "patch", description="The ID of the file to update"), @ApiMethod(methodName = "touch", description="The ID of the file to update"), @ApiMe [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "copy", description="The ID of the file to copy"), @ApiMethod(methodName = "delete", description="The ID of the file to delete"), @ApiMethod(methodName = "export", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID for the file in question"), @ApiMethod(methodName = "patch", description="The ID of the file to update"), @ApiMethod(methodName = "touch", description="The ID of the file t [...]
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The media HTTP content or null if none"), @ApiMethod(methodName = "update", description="The media HTTP content or null if none")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The media HTTP content or null if none"), @ApiMethod(methodName = "update", description="The media HTTP content or null if none")})
     private com.google.api.client.http.AbstractInputStreamContent mediaContent;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "export", description="The MIME type of the format requested for this export")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "export", description="The MIME type of the format requested for this export")})
     private String mimeType;
 
     public com.google.api.services.drive.model.File getContent() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveParentsEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveParentsEndpointConfiguration.java
index a46cfd9..4f49ccd 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveParentsEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveParentsEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveParentsEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.ParentReference")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.ParentReference")})
     private com.google.api.services.drive.model.ParentReference content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "insert", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "insert", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file")})
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the parent"), @ApiMethod(methodName = "get", description="The ID of the parent")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the parent"), @ApiMethod(methodName = "get", description="The ID of the parent")})
     private String parentId;
 
     public com.google.api.services.drive.model.ParentReference getContent() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfiguration.java
index 35ead98..5c84265 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePermissionsEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DrivePermissionsEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.Permission"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.Permission"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.Permission")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.Permission"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.Permission"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.Permission")})
     private com.google.api.services.drive.model.Permission content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getIdForEmail", description="The email address for which to return a permission ID")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getIdForEmail", description="The email address for which to return a permission ID")})
     private String email;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "get", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "insert", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "list", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "patch", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "update", description="The [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "get", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "insert", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "list", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "patch", description="The ID for the file or Team Drive"), @ApiMethod(methodName = "update" [...]
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID for the permission"), @ApiMethod(methodName = "get", description="The ID for the permission"), @ApiMethod(methodName = "patch", description="The ID for the permission"), @ApiMethod(methodName = "update", description="The ID for the permission")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID for the permission"), @ApiMethod(methodName = "get", description="The ID for the permission"), @ApiMethod(methodName = "patch", description="The ID for the permission"), @ApiMethod(methodName = "update", description="The ID for the permission")})
     private String permissionId;
 
     public com.google.api.services.drive.model.Permission getContent() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePropertiesEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePropertiesEndpointConfiguration.java
index 662607f..8b5bb04 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePropertiesEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DrivePropertiesEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DrivePropertiesEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.Property"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.Property"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.Property")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.Property"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.Property"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.Property")})
     private com.google.api.services.drive.model.Property content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "insert", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file"), @ApiMethod(methodName = "patch", description="The ID of the file"), @ApiMethod(methodName = "update", description="The ID of the file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "insert", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file"), @ApiMethod(methodName = "patch", description="The ID of the file"), @ApiMethod(methodName = "update", description="The ID of the file")})
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The key of the property"), @ApiMethod(methodName = "get", description="The key of the property"), @ApiMethod(methodName = "patch", description="The key of the property"), @ApiMethod(methodName = "update", description="The key of the property")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The key of the property"), @ApiMethod(methodName = "get", description="The key of the property"), @ApiMethod(methodName = "patch", description="The key of the property"), @ApiMethod(methodName = "update", description="The key of the property")})
     private String propertyKey;
 
     public com.google.api.services.drive.model.Property getContent() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRealtimeEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRealtimeEndpointConfiguration.java
index a194913..f0a5f4b 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRealtimeEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRealtimeEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveRealtimeEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "get", description="The ID of the file that the Realtime API data model is associated with"), @ApiMethod(methodName = "update", description="The ID of the file that the Realtime API data model is associated with"), @ApiMethod(methodName = "update", description="The ID of the file that the Realtime API data model is associated with")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "get", description="The ID of the file that the Realtime API data model is associated with"), @ApiMethod(methodName = "update", description="The ID of the file that the Realtime API data model is associated with"), @ApiMethod(methodName = "update", description="The ID of the file that the Realtime API data model is associated with")})
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "update", description="The media HTTP content or null if none")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "update", description="The media HTTP content or null if none")})
     private com.google.api.client.http.AbstractInputStreamContent mediaContent;
 
     public String getFileId() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfiguration.java
index d7510dc..b5e825e 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRepliesEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveRepliesEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the comment"), @ApiMethod(methodName = "get", description="The ID of the comment"), @ApiMethod(methodName = "insert", description="The ID of the comment"), @ApiMethod(methodName = "list", description="The ID of the comment"), @ApiMethod(methodName = "patch", description="The ID of the comment"), @ApiMethod(methodName = "update", description="The ID of the comment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the comment"), @ApiMethod(methodName = "get", description="The ID of the comment"), @ApiMethod(methodName = "insert", description="The ID of the comment"), @ApiMethod(methodName = "list", description="The ID of the comment"), @ApiMethod(methodName = "patch", description="The ID of the comment"), @ApiMethod(methodName = "update", description="The ID of the comment")})
     private String commentId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.CommentReply"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.CommentReply"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.CommentReply")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "insert", description="The com.google.api.services.drive.model.CommentReply"), @ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.CommentReply"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.CommentReply")})
     private com.google.api.services.drive.model.CommentReply content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "insert", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file"), @ApiMethod(methodName = "patch", description="The ID of the file"), @ApiMethod(methodName = "update", description="The ID of the file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "insert", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file"), @ApiMethod(methodName = "patch", description="The ID of the file"), @ApiMethod(methodName = "update", description="The ID of the file")})
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the reply"), @ApiMethod(methodName = "get", description="The ID of the reply"), @ApiMethod(methodName = "patch", description="The ID of the reply"), @ApiMethod(methodName = "update", description="The ID of the reply")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the reply"), @ApiMethod(methodName = "get", description="The ID of the reply"), @ApiMethod(methodName = "patch", description="The ID of the reply"), @ApiMethod(methodName = "update", description="The ID of the reply")})
     private String replyId;
 
     public String getCommentId() {
diff --git a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfiguration.java b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfiguration.java
index b60c141..3040bbf 100644
--- a/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfiguration.java
+++ b/components/camel-google-drive/src/generated/java/org/apache/camel/component/google/drive/DriveRevisionsEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class DriveRevisionsEndpointConfiguration extends GoogleDriveConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.Revision"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.Revision")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "patch", description="The com.google.api.services.drive.model.Revision"), @ApiMethod(methodName = "update", description="The com.google.api.services.drive.model.Revision")})
     private com.google.api.services.drive.model.Revision content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file"), @ApiMethod(methodName = "patch", description="The ID for the file"), @ApiMethod(methodName = "update", description="The ID for the file")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the file"), @ApiMethod(methodName = "get", description="The ID of the file"), @ApiMethod(methodName = "list", description="The ID of the file"), @ApiMethod(methodName = "patch", description="The ID for the file"), @ApiMethod(methodName = "update", description="The ID for the file")})
     private String fileId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the revision"), @ApiMethod(methodName = "get", description="The ID of the revision"), @ApiMethod(methodName = "patch", description="The ID for the revision"), @ApiMethod(methodName = "update", description="The ID for the revision")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the revision"), @ApiMethod(methodName = "get", description="The ID of the revision"), @ApiMethod(methodName = "patch", description="The ID for the revision"), @ApiMethod(methodName = "update", description="The ID for the revision")})
     private String revisionId;
 
     public com.google.api.services.drive.model.Revision getContent() {
diff --git a/components/camel-google-drive/src/generated/resources/org/apache/camel/component/google/drive/google-drive.json b/components/camel-google-drive/src/generated/resources/org/apache/camel/component/google/drive/google-drive.json
index 9e790ea..f332d03 100644
--- a/components/camel-google-drive/src/generated/resources/org/apache/camel/component/google/drive/google-drive.json
+++ b/components/camel-google-drive/src/generated/resources/org/apache/camel/component/google/drive/google-drive.json
@@ -84,17 +84,17 @@
     "drive-files": { "methods": { "copy": { "description": "Creates a copy of the specified file", "signatures": [ "com.google.api.services.drive.Drive$Files$Copy copy(String fileId, com.google.api.services.drive.model.File content)" ] }, "delete": { "description": "Permanently deletes a file by ID", "signatures": [ "com.google.api.services.drive.Drive$Files$Delete delete(String fileId)" ] }, "export": { "description": "Exports a Google Doc to the requested MIME type and returns the expo [...]
   },
   "apiProperties": {
-    "drive-channels": { "methods": { "stop": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Channel", "deprecated": false, "secret": false, "description": "The com.google.api.services.drive.model.Channel" } } } } },
-    "drive-revisions": { "methods": { "delete": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the file" }, "revisionId": { "kind": "parameter", "displayName": "Revision Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false,  [...]
-    "drive-replies": { "methods": { "delete": { "properties": { "commentId": { "kind": "parameter", "displayName": "Comment Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the comment" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, " [...]
-    "drive-permissions": { "methods": { "delete": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID for the file or Team Drive" }, "permissionId": { "kind": "parameter", "displayName": "Permission Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String",  [...]
-    "drive-parents": { "methods": { "delete": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the file" }, "parentId": { "kind": "parameter", "displayName": "Parent Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secre [...]
-    "drive-apps": { "methods": { "get": { "properties": { "appId": { "kind": "parameter", "displayName": "App Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the app" } } } } },
-    "drive-changes": { "methods": { "get": { "properties": { "changeId": { "kind": "parameter", "displayName": "Change Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the change" } } }, "watch": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "object", "javaType": " [...]
-    "drive-comments": { "methods": { "delete": { "properties": { "commentId": { "kind": "parameter", "displayName": "Comment Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the comment" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false,  [...]
-    "drive-properties": { "methods": { "delete": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the file" }, "propertyKey": { "kind": "parameter", "displayName": "Property Key", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": fals [...]
-    "drive-realtime": { "methods": { "get": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the file that the Realtime API data model is associated with" } } }, "update": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, [...]
-    "drive-children": { "methods": { "delete": { "properties": { "childId": { "kind": "parameter", "displayName": "Child Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the child" }, "folderId": { "kind": "parameter", "displayName": "Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "s [...]
-    "drive-files": { "methods": { "copy": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.File", "deprecated": false, "secret": false, "description": "The com.google.api.services.drive.model.File" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "jav [...]
+    "drive-channels": { "methods": { "stop": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Channel", "deprecated": false, "secret": false, "description": "The com.google.api.services.drive.model.Channel", "optional": false } } } } },
+    "drive-revisions": { "methods": { "delete": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the file", "optional": false }, "revisionId": { "kind": "parameter", "displayName": "Revision Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "d [...]
+    "drive-replies": { "methods": { "delete": { "properties": { "commentId": { "kind": "parameter", "displayName": "Comment Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the comment", "optional": false }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "de [...]
+    "drive-permissions": { "methods": { "delete": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID for the file or Team Drive", "optional": false }, "permissionId": { "kind": "parameter", "displayName": "Permission Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": " [...]
+    "drive-parents": { "methods": { "delete": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the file", "optional": false }, "parentId": { "kind": "parameter", "displayName": "Parent Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "depreca [...]
+    "drive-apps": { "methods": { "get": { "properties": { "appId": { "kind": "parameter", "displayName": "App Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the app", "optional": false } } } } },
+    "drive-changes": { "methods": { "get": { "properties": { "changeId": { "kind": "parameter", "displayName": "Change Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the change", "optional": false } } }, "watch": { "properties": { "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "obj [...]
+    "drive-comments": { "methods": { "delete": { "properties": { "commentId": { "kind": "parameter", "displayName": "Comment Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the comment", "optional": false }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "d [...]
+    "drive-properties": { "methods": { "delete": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the file", "optional": false }, "propertyKey": { "kind": "parameter", "displayName": "Property Key", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", [...]
+    "drive-realtime": { "methods": { "get": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the file that the Realtime API data model is associated with", "optional": false } } }, "update": { "properties": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", [...]
+    "drive-children": { "methods": { "delete": { "properties": { "childId": { "kind": "parameter", "displayName": "Child Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the child", "optional": false }, "folderId": { "kind": "parameter", "displayName": "Folder Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "dep [...]
+    "drive-files": { "methods": { "copy": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.File", "deprecated": false, "secret": false, "description": "The com.google.api.services.drive.model.File", "optional": false }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string [...]
   }
 }
diff --git a/components/camel-google-drive/src/main/docs/google-drive-component.adoc b/components/camel-google-drive/src/main/docs/google-drive-component.adoc
index ea4a7ce..cfe274c 100644
--- a/components/camel-google-drive/src/main/docs/google-drive-component.adoc
+++ b/components/camel-google-drive/src/main/docs/google-drive-component.adoc
@@ -207,18 +207,16 @@ The drive-channels API method(s) has the following set of parameters listed in t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| stop | *contentChannel* | The com.google.api.services.drive.model.Channel | Channel
+| stop | *contentChannel* |  The com.google.api.services.drive.model.Channel | Channel
 |===
 
 In addition to the parameters above, the drive-channels API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -266,28 +264,26 @@ The drive-revisions API method(s) has the following set of parameters listed in
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *fileId* | The ID of the file | String
-| delete | *revisionId* | The ID of the revision | String
-| get | *fileId* | The ID of the file | String
-| get | *revisionId* | The ID of the revision | String
-| list | *fileId* | The ID of the file | String
-| patch | *content* | The com.google.api.services.drive.model.Revision | Revision
-| patch | *fileId* | The ID for the file | String
-| patch | *revisionId* | The ID for the revision | String
-| update | *content* | The com.google.api.services.drive.model.Revision | Revision
-| update | *fileId* | The ID for the file | String
-| update | *revisionId* | The ID for the revision | String
+| delete | *fileId* |  The ID of the file | String
+| delete | *revisionId* |  The ID of the revision | String
+| get | *fileId* |  The ID of the file | String
+| get | *revisionId* |  The ID of the revision | String
+| list | *fileId* |  The ID of the file | String
+| patch | *content* |  The com.google.api.services.drive.model.Revision | Revision
+| patch | *fileId* |  The ID for the file | String
+| patch | *revisionId* |  The ID for the revision | String
+| update | *content* |  The com.google.api.services.drive.model.Revision | Revision
+| update | *fileId* |  The ID for the file | String
+| update | *revisionId* |  The ID for the revision | String
 |===
 
 In addition to the parameters above, the drive-revisions API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -338,36 +334,34 @@ The drive-replies API method(s) has the following set of parameters listed in th
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *commentId* | The ID of the comment | String
-| delete | *fileId* | The ID of the file | String
-| delete | *replyId* | The ID of the reply | String
-| get | *commentId* | The ID of the comment | String
-| get | *fileId* | The ID of the file | String
-| get | *replyId* | The ID of the reply | String
-| insert | *commentId* | The ID of the comment | String
-| insert | *content* | The com.google.api.services.drive.model.CommentReply | CommentReply
-| insert | *fileId* | The ID of the file | String
-| list | *commentId* | The ID of the comment | String
-| list | *fileId* | The ID of the file | String
-| patch | *commentId* | The ID of the comment | String
-| patch | *content* | The com.google.api.services.drive.model.CommentReply | CommentReply
-| patch | *fileId* | The ID of the file | String
-| patch | *replyId* | The ID of the reply | String
-| update | *commentId* | The ID of the comment | String
-| update | *content* | The com.google.api.services.drive.model.CommentReply | CommentReply
-| update | *fileId* | The ID of the file | String
-| update | *replyId* | The ID of the reply | String
+| delete | *commentId* |  The ID of the comment | String
+| delete | *fileId* |  The ID of the file | String
+| delete | *replyId* |  The ID of the reply | String
+| get | *commentId* |  The ID of the comment | String
+| get | *fileId* |  The ID of the file | String
+| get | *replyId* |  The ID of the reply | String
+| insert | *commentId* |  The ID of the comment | String
+| insert | *content* |  The com.google.api.services.drive.model.CommentReply | CommentReply
+| insert | *fileId* |  The ID of the file | String
+| list | *commentId* |  The ID of the comment | String
+| list | *fileId* |  The ID of the file | String
+| patch | *commentId* |  The ID of the comment | String
+| patch | *content* |  The com.google.api.services.drive.model.CommentReply | CommentReply
+| patch | *fileId* |  The ID of the file | String
+| patch | *replyId* |  The ID of the reply | String
+| update | *commentId* |  The ID of the comment | String
+| update | *content* |  The com.google.api.services.drive.model.CommentReply | CommentReply
+| update | *fileId* |  The ID of the file | String
+| update | *replyId* |  The ID of the reply | String
 |===
 
 In addition to the parameters above, the drive-replies API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -421,31 +415,29 @@ The drive-permissions API method(s) has the following set of parameters listed i
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *fileId* | The ID for the file or Team Drive | String
-| delete | *permissionId* | The ID for the permission | String
-| get | *fileId* | The ID for the file or Team Drive | String
-| get | *permissionId* | The ID for the permission | String
-| getIdForEmail | *email* | The email address for which to return a permission ID | String
-| insert | *content* | The com.google.api.services.drive.model.Permission | Permission
-| insert | *fileId* | The ID for the file or Team Drive | String
-| list | *fileId* | The ID for the file or Team Drive | String
-| patch | *content* | The com.google.api.services.drive.model.Permission | Permission
-| patch | *fileId* | The ID for the file or Team Drive | String
-| patch | *permissionId* | The ID for the permission | String
-| update | *content* | The com.google.api.services.drive.model.Permission | Permission
-| update | *fileId* | The ID for the file or Team Drive | String
-| update | *permissionId* | The ID for the permission | String
+| delete | *fileId* |  The ID for the file or Team Drive | String
+| delete | *permissionId* |  The ID for the permission | String
+| get | *fileId* |  The ID for the file or Team Drive | String
+| get | *permissionId* |  The ID for the permission | String
+| getIdForEmail | *email* |  The email address for which to return a permission ID | String
+| insert | *content* |  The com.google.api.services.drive.model.Permission | Permission
+| insert | *fileId* |  The ID for the file or Team Drive | String
+| list | *fileId* |  The ID for the file or Team Drive | String
+| patch | *content* |  The com.google.api.services.drive.model.Permission | Permission
+| patch | *fileId* |  The ID for the file or Team Drive | String
+| patch | *permissionId* |  The ID for the permission | String
+| update | *content* |  The com.google.api.services.drive.model.Permission | Permission
+| update | *fileId* |  The ID for the file or Team Drive | String
+| update | *permissionId* |  The ID for the permission | String
 |===
 
 In addition to the parameters above, the drive-permissions API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -490,24 +482,22 @@ The drive-parents API method(s) has the following set of parameters listed in th
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *fileId* | The ID of the file | String
-| delete | *parentId* | The ID of the parent | String
-| get | *fileId* | The ID of the file | String
-| get | *parentId* | The ID of the parent | String
-| insert | *content* | The com.google.api.services.drive.model.ParentReference | ParentReference
-| insert | *fileId* | The ID of the file | String
-| list | *fileId* | The ID of the file | String
+| delete | *fileId* |  The ID of the file | String
+| delete | *parentId* |  The ID of the parent | String
+| get | *fileId* |  The ID of the file | String
+| get | *parentId* |  The ID of the parent | String
+| insert | *content* |  The com.google.api.services.drive.model.ParentReference | ParentReference
+| insert | *fileId* |  The ID of the file | String
+| list | *fileId* |  The ID of the file | String
 |===
 
 In addition to the parameters above, the drive-parents API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -543,18 +533,16 @@ The drive-apps API method(s) has the following set of parameters listed in the t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| get | *appId* | The ID of the app | String
+| get | *appId* |  The ID of the app | String
 |===
 
 In addition to the parameters above, the drive-apps API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -593,19 +581,17 @@ The drive-changes API method(s) has the following set of parameters listed in th
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| get | *changeId* | The ID of the change | String
-| watch | *contentChannel* | The com.google.api.services.drive.model.Channel | Channel
+| get | *changeId* |  The ID of the change | String
+| watch | *contentChannel* |  The com.google.api.services.drive.model.Channel | Channel
 |===
 
 In addition to the parameters above, the drive-changes API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -656,30 +642,28 @@ The drive-comments API method(s) has the following set of parameters listed in t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *commentId* | The ID of the comment | String
-| delete | *fileId* | The ID of the file | String
-| get | *commentId* | The ID of the comment | String
-| get | *fileId* | The ID of the file | String
-| insert | *content* | The com.google.api.services.drive.model.Comment | Comment
-| insert | *fileId* | The ID of the file | String
-| list | *fileId* | The ID of the file | String
-| patch | *commentId* | The ID of the comment | String
-| patch | *content* | The com.google.api.services.drive.model.Comment | Comment
-| patch | *fileId* | The ID of the file | String
-| update | *commentId* | The ID of the comment | String
-| update | *content* | The com.google.api.services.drive.model.Comment | Comment
-| update | *fileId* | The ID of the file | String
+| delete | *commentId* |  The ID of the comment | String
+| delete | *fileId* |  The ID of the file | String
+| get | *commentId* |  The ID of the comment | String
+| get | *fileId* |  The ID of the file | String
+| insert | *content* |  The com.google.api.services.drive.model.Comment | Comment
+| insert | *fileId* |  The ID of the file | String
+| list | *fileId* |  The ID of the file | String
+| patch | *commentId* |  The ID of the comment | String
+| patch | *content* |  The com.google.api.services.drive.model.Comment | Comment
+| patch | *fileId* |  The ID of the file | String
+| update | *commentId* |  The ID of the comment | String
+| update | *content* |  The com.google.api.services.drive.model.Comment | Comment
+| update | *fileId* |  The ID of the file | String
 |===
 
 In addition to the parameters above, the drive-comments API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -730,30 +714,28 @@ The drive-properties API method(s) has the following set of parameters listed in
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *fileId* | The ID of the file | String
-| delete | *propertyKey* | The key of the property | String
-| get | *fileId* | The ID of the file | String
-| get | *propertyKey* | The key of the property | String
-| insert | *content* | The com.google.api.services.drive.model.Property | Property
-| insert | *fileId* | The ID of the file | String
-| list | *fileId* | The ID of the file | String
-| patch | *content* | The com.google.api.services.drive.model.Property | Property
-| patch | *fileId* | The ID of the file | String
-| patch | *propertyKey* | The key of the property | String
-| update | *content* | The com.google.api.services.drive.model.Property | Property
-| update | *fileId* | The ID of the file | String
-| update | *propertyKey* | The key of the property | String
+| delete | *fileId* |  The ID of the file | String
+| delete | *propertyKey* |  The key of the property | String
+| get | *fileId* |  The ID of the file | String
+| get | *propertyKey* |  The key of the property | String
+| insert | *content* |  The com.google.api.services.drive.model.Property | Property
+| insert | *fileId* |  The ID of the file | String
+| list | *fileId* |  The ID of the file | String
+| patch | *content* |  The com.google.api.services.drive.model.Property | Property
+| patch | *fileId* |  The ID of the file | String
+| patch | *propertyKey* |  The key of the property | String
+| update | *content* |  The com.google.api.services.drive.model.Property | Property
+| update | *fileId* |  The ID of the file | String
+| update | *propertyKey* |  The key of the property | String
 |===
 
 In addition to the parameters above, the drive-properties API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -794,20 +776,18 @@ The drive-realtime API method(s) has the following set of parameters listed in t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| get | *fileId* | The ID of the file that the Realtime API data model is associated with | String
-| update | *fileId* | The ID of the file that the Realtime API data model is associated with | String
-| update | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
+| get | *fileId* |  The ID of the file that the Realtime API data model is associated with | String
+| update | *fileId* |  The ID of the file that the Realtime API data model is associated with | String
+| update | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
 |===
 
 In addition to the parameters above, the drive-realtime API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -852,24 +832,22 @@ The drive-children API method(s) has the following set of parameters listed in t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *childId* | The ID of the child | String
-| delete | *folderId* | The ID of the folder | String
-| get | *childId* | The ID of the child | String
-| get | *folderId* | The ID of the folder | String
-| insert | *content* | The com.google.api.services.drive.model.ChildReference | ChildReference
-| insert | *folderId* | The ID of the folder | String
-| list | *folderId* | The ID of the folder | String
+| delete | *childId* |  The ID of the child | String
+| delete | *folderId* |  The ID of the folder | String
+| get | *childId* |  The ID of the child | String
+| get | *folderId* |  The ID of the folder | String
+| insert | *content* |  The com.google.api.services.drive.model.ChildReference | ChildReference
+| insert | *folderId* |  The ID of the folder | String
+| list | *folderId* |  The ID of the folder | String
 |===
 
 In addition to the parameters above, the drive-children API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 
 
 
@@ -939,35 +917,33 @@ The drive-files API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| copy | *content* | The com.google.api.services.drive.model.File | File
-| copy | *fileId* | The ID of the file to copy | String
-| delete | *fileId* | The ID of the file to delete | String
-| export | *fileId* | The ID of the file | String
-| export | *mimeType* | The MIME type of the format requested for this export | String
-| get | *fileId* | The ID for the file in question | String
-| insert | *content* | The com.google.api.services.drive.model.File media metadata or null if none | File
-| insert | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| patch | *content* | The com.google.api.services.drive.model.File | File
-| patch | *fileId* | The ID of the file to update | String
-| touch | *fileId* | The ID of the file to update | String
-| trash | *fileId* | The ID of the file to trash | String
-| untrash | *fileId* | The ID of the file to untrash | String
-| update | *content* | The com.google.api.services.drive.model.File media metadata or null if none | File
-| update | *fileId* | The ID of the file to update | String
-| update | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| watch | *contentChannel* | The com.google.api.services.drive.model.Channel | Channel
-| watch | *fileId* | The ID for the file in question | String
+| copy | *content* |  The com.google.api.services.drive.model.File | File
+| copy | *fileId* |  The ID of the file to copy | String
+| delete | *fileId* |  The ID of the file to delete | String
+| export | *fileId* |  The ID of the file | String
+| export | *mimeType* |  The MIME type of the format requested for this export | String
+| get | *fileId* |  The ID for the file in question | String
+| insert | *content* |  The com.google.api.services.drive.model.File media metadata or null if none | File
+| insert | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| patch | *content* |  The com.google.api.services.drive.model.File | File
+| patch | *fileId* |  The ID of the file to update | String
+| touch | *fileId* |  The ID of the file to update | String
+| trash | *fileId* |  The ID of the file to trash | String
+| untrash | *fileId* |  The ID of the file to untrash | String
+| update | *content* |  The com.google.api.services.drive.model.File media metadata or null if none | File
+| update | *fileId* |  The ID of the file to update | String
+| update | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| watch | *contentChannel* |  The com.google.api.services.drive.model.Channel | Channel
+| watch | *fileId* |  The ID for the file in question | String
 |===
 
 In addition to the parameters above, the drive-files API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-drive.parameter`.
+The message header name must be of the format `CamelGoogleDrive.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-drive.myParameterNameHere` header.
+would override a `CamelGoogleDrive.myParameterNameHere` header.
 // endpoint options: END
 
 
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersDraftsEndpointConfiguration.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersDraftsEndpointConfiguration.java
index d7f263a..fc5cf5a 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersDraftsEndpointConfiguration.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersDraftsEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class GmailUsersDraftsEndpointConfiguration extends GoogleMailConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The com.google.api.services.gmail.model.Draft media metadata or null if none"), @ApiMethod(methodName = "send", description="The com.google.api.services.gmail.model.Draft media metadata or null if none"), @ApiMethod(methodName = "update", description="The com.google.api.services.gmail.model.Draft media metadata or null if none")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The com.google.api.services.gmail.model.Draft media metadata or null if none"), @ApiMethod(methodName = "send", description="The com.google.api.services.gmail.model.Draft media metadata or null if none"), @ApiMethod(methodName = "update", description="The com.google.api.services.gmail.model.Draft media metadata or null if none")})
     private com.google.api.services.gmail.model.Draft content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the draft to delete"), @ApiMethod(methodName = "get", description="The ID of the draft to retrieve"), @ApiMethod(methodName = "update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the draft to delete"), @ApiMethod(methodName = "get", description="The ID of the draft to retrieve"), @ApiMethod(methodName = "update")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The media HTTP content or null if none"), @ApiMethod(methodName = "send", description="The media HTTP content or null if none"), @ApiMethod(methodName = "update", description="The media HTTP content or null if none")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The media HTTP content or null if none"), @ApiMethod(methodName = "send", description="The media HTTP content or null if none"), @ApiMethod(methodName = "update", description="The media HTTP content or null if none")})
     private com.google.api.client.http.AbstractInputStreamContent mediaContent;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "create", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the authenticated user. default: [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "create", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the authentica [...]
     private String userId;
 
     public com.google.api.services.gmail.model.Draft getContent() {
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersEndpointConfiguration.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersEndpointConfiguration.java
index 950a070..9530887 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersEndpointConfiguration.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class GmailUsersEndpointConfiguration extends GoogleMailConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.gmail.model.WatchRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "watch", description="The com.google.api.services.gmail.model.WatchRequest")})
     private com.google.api.services.gmail.model.WatchRequest content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getProfile", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "stop", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "watch", description="The user's email address. The special value me can be used to indicate the authenticated user. default [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getProfile", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "stop", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "watch", description="The user's email address. The special value me can be used to indicate the authentic [...]
     private String userId;
 
     public com.google.api.services.gmail.model.WatchRequest getContent() {
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersHistoryEndpointConfiguration.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersHistoryEndpointConfiguration.java
index 753c0d7..0bcb618 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersHistoryEndpointConfiguration.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersHistoryEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class GmailUsersHistoryEndpointConfiguration extends GoogleMailConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "list", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "list", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me")})
     private String userId;
 
     public String getUserId() {
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersLabelsEndpointConfiguration.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersLabelsEndpointConfiguration.java
index 116a295..d21bd75 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersLabelsEndpointConfiguration.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersLabelsEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class GmailUsersLabelsEndpointConfiguration extends GoogleMailConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The com.google.api.services.gmail.model.Label"), @ApiMethod(methodName = "patch", description="The com.google.api.services.gmail.model.Label"), @ApiMethod(methodName = "update", description="The com.google.api.services.gmail.model.Label")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The com.google.api.services.gmail.model.Label"), @ApiMethod(methodName = "patch", description="The com.google.api.services.gmail.model.Label"), @ApiMethod(methodName = "update", description="The com.google.api.services.gmail.model.Label")})
     private com.google.api.services.gmail.model.Label content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the label to delete"), @ApiMethod(methodName = "get", description="The ID of the label to retrieve"), @ApiMethod(methodName = "patch", description="The ID of the label to update"), @ApiMethod(methodName = "update", description="The ID of the label to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the label to delete"), @ApiMethod(methodName = "get", description="The ID of the label to retrieve"), @ApiMethod(methodName = "patch", description="The ID of the label to update"), @ApiMethod(methodName = "update", description="The ID of the label to update")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "get", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "get", description="The user's email address. The special value me can be used to indicate the authenticated [...]
     private String userId;
 
     public com.google.api.services.gmail.model.Label getContent() {
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersMessagesAttachmentsEndpointConfiguration.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersMessagesAttachmentsEndpointConfiguration.java
index 0ff3e8a..e37bb4a 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersMessagesAttachmentsEndpointConfiguration.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersMessagesAttachmentsEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class GmailUsersMessagesAttachmentsEndpointConfiguration extends GoogleMailConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "get", description="The ID of the attachment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "get", description="The ID of the attachment")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "get", description="The ID of the message containing the attachment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "get", description="The ID of the message containing the attachment")})
     private String messageId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "get", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "get", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me")})
     private String userId;
 
     public String getId() {
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersMessagesEndpointConfiguration.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersMessagesEndpointConfiguration.java
index a129260..f686482 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersMessagesEndpointConfiguration.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersMessagesEndpointConfiguration.java
@@ -20,25 +20,25 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class GmailUsersMessagesEndpointConfiguration extends GoogleMailConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchDelete", description="The com.google.api.services.gmail.model.BatchDeleteMessagesRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchDelete", description="The com.google.api.services.gmail.model.BatchDeleteMessagesRequest")})
     private com.google.api.services.gmail.model.BatchDeleteMessagesRequest batchDeleteMessagesRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchModify", description="The com.google.api.services.gmail.model.BatchModifyMessagesRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchModify", description="The com.google.api.services.gmail.model.BatchModifyMessagesRequest")})
     private com.google.api.services.gmail.model.BatchModifyMessagesRequest batchModifyMessagesRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "gmailImport", description="The com.google.api.services.gmail.model.Message media metadata or null if none"), @ApiMethod(methodName = "insert", description="The com.google.api.services.gmail.model.Message media metadata or null if none"), @ApiMethod(methodName = "send", description="The com.google.api.services.gmail.model.Message media metadata or null if none")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "gmailImport", description="The com.google.api.services.gmail.model.Message media metadata or null if none"), @ApiMethod(methodName = "insert", description="The com.google.api.services.gmail.model.Message media metadata or null if none"), @ApiMethod(methodName = "send", description="The com.google.api.services.gmail.model.Message media metadata or null if none")})
     private com.google.api.services.gmail.model.Message content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the message to delete"), @ApiMethod(methodName = "get", description="The ID of the message to retrieve"), @ApiMethod(methodName = "modify", description="The ID of the message to modify"), @ApiMethod(methodName = "trash", description="The ID of the message to Trash"), @ApiMethod(methodName = "untrash", description="The ID of the message to remove from Trash")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The ID of the message to delete"), @ApiMethod(methodName = "get", description="The ID of the message to retrieve"), @ApiMethod(methodName = "modify", description="The ID of the message to modify"), @ApiMethod(methodName = "trash", description="The ID of the message to Trash"), @ApiMethod(methodName = "untrash", description="The ID of the message to remove from Trash")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "gmailImport", description="The media HTTP content or null if none"), @ApiMethod(methodName = "insert", description="The media HTTP content or null if none"), @ApiMethod(methodName = "send", description="The media HTTP content or null if none")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "gmailImport", description="The media HTTP content or null if none"), @ApiMethod(methodName = "insert", description="The media HTTP content or null if none"), @ApiMethod(methodName = "send", description="The media HTTP content or null if none")})
     private com.google.api.client.http.AbstractInputStreamContent mediaContent;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "modify", description="The com.google.api.services.gmail.model.ModifyMessageRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "modify", description="The com.google.api.services.gmail.model.ModifyMessageRequest")})
     private com.google.api.services.gmail.model.ModifyMessageRequest modifyMessageRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchDelete", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "batchModify", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the authenticated user [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchDelete", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "batchModify", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the  [...]
     private String userId;
 
     public com.google.api.services.gmail.model.BatchDeleteMessagesRequest getBatchDeleteMessagesRequest() {
diff --git a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersThreadsEndpointConfiguration.java b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersThreadsEndpointConfiguration.java
index 6a51acb..33aac64 100644
--- a/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersThreadsEndpointConfiguration.java
+++ b/components/camel-google-mail/src/generated/java/org/apache/camel/component/google/mail/GmailUsersThreadsEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class GmailUsersThreadsEndpointConfiguration extends GoogleMailConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "modify", description="The com.google.api.services.gmail.model.ModifyThreadRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "modify", description="The com.google.api.services.gmail.model.ModifyThreadRequest")})
     private com.google.api.services.gmail.model.ModifyThreadRequest content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="ID of the Thread to delete"), @ApiMethod(methodName = "get", description="The ID of the thread to retrieve"), @ApiMethod(methodName = "modify", description="The ID of the thread to modify"), @ApiMethod(methodName = "trash", description="The ID of the thread to Trash"), @ApiMethod(methodName = "untrash", description="The ID of the thread to remove from Trash")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="ID of the Thread to delete"), @ApiMethod(methodName = "get", description="The ID of the thread to retrieve"), @ApiMethod(methodName = "modify", description="The ID of the thread to modify"), @ApiMethod(methodName = "trash", description="The ID of the thread to Trash"), @ApiMethod(methodName = "untrash", description="The ID of the thread to remove from Trash")})
     private String id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "get", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "list", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me") [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "get", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "list", description="The user's email address. The special value me can be used to indicate the authenticated u [...]
     private String userId;
 
     public com.google.api.services.gmail.model.ModifyThreadRequest getContent() {
diff --git a/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/google-mail.json b/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/google-mail.json
index b7de6c0..900a8e4 100644
--- a/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/google-mail.json
+++ b/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/google-mail.json
@@ -76,12 +76,12 @@
     "messages": { "methods": { "batchDelete": { "description": "Deletes many messages by message ID", "signatures": [ "com.google.api.services.gmail.Gmail$Users$Messages$BatchDelete batchDelete(String userId, com.google.api.services.gmail.model.BatchDeleteMessagesRequest content)" ] }, "batchModify": { "description": "Modifies the labels on the specified messages", "signatures": [ "com.google.api.services.gmail.Gmail$Users$Messages$BatchModify batchModify(String userId, com.google.api.se [...]
   },
   "apiProperties": {
-    "users": { "methods": { "getProfile": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The user's email address. The special value me can be used to indicate the authenticated user. default: me" } } }, "stop": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", [...]
-    "threads": { "methods": { "delete": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "ID of the Thread to delete" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false,  [...]
-    "drafts": { "methods": { "create": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.Draft", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.Draft media metadata or null if none" }, "mediaContent": { "kind": "parameter", "displayName": "Media Content", "group": "common", "label": "", "required": [...]
-    "labels": { "methods": { "create": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.Label", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.Label" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java [...]
-    "history": { "methods": { "list": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The user's email address. The special value me can be used to indicate the authenticated user. default: me" } } } } },
-    "attachments": { "methods": { "get": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the attachment" }, "messageId": { "kind": "parameter", "displayName": "Message Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": fa [...]
-    "messages": { "methods": { "batchDelete": { "properties": { "batchDeleteMessagesRequest": { "kind": "parameter", "displayName": "Batch Delete Messages Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.BatchDeleteMessagesRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.BatchDeleteMessagesRequest" }, "userId": { "kind": "parameter", "displayName": "User I [...]
+    "users": { "methods": { "getProfile": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The user's email address. The special value me can be used to indicate the authenticated user. default: me", "optional": false } } }, "stop": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", [...]
+    "threads": { "methods": { "delete": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "ID of the Thread to delete", "optional": false }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false [...]
+    "drafts": { "methods": { "create": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.Draft", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.Draft media metadata or null if none", "optional": false }, "mediaContent": { "kind": "parameter", "displayName": "Media Content", "group": "common", "labe [...]
+    "labels": { "methods": { "create": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.Label", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.Label", "optional": false }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string" [...]
+    "history": { "methods": { "list": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The user's email address. The special value me can be used to indicate the authenticated user. default: me", "optional": false } } } } },
+    "attachments": { "methods": { "get": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the attachment", "optional": false }, "messageId": { "kind": "parameter", "displayName": "Message Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated":  [...]
+    "messages": { "methods": { "batchDelete": { "properties": { "batchDeleteMessagesRequest": { "kind": "parameter", "displayName": "Batch Delete Messages Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.BatchDeleteMessagesRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.BatchDeleteMessagesRequest", "optional": false }, "userId": { "kind": "parameter", "di [...]
   }
 }
diff --git a/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/stream/google-mail-stream.json b/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/stream/google-mail-stream.json
index 69845b0..14fda47 100644
--- a/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/stream/google-mail-stream.json
+++ b/components/camel-google-mail/src/generated/resources/org/apache/camel/component/google/mail/stream/google-mail-stream.json
@@ -80,12 +80,12 @@
     "messages": { "methods": { "batchDelete": { "description": "Deletes many messages by message ID", "signatures": [ "com.google.api.services.gmail.Gmail$Users$Messages$BatchDelete batchDelete(String userId, com.google.api.services.gmail.model.BatchDeleteMessagesRequest content)" ] }, "batchModify": { "description": "Modifies the labels on the specified messages", "signatures": [ "com.google.api.services.gmail.Gmail$Users$Messages$BatchModify batchModify(String userId, com.google.api.se [...]
   },
   "apiProperties": {
-    "users": { "methods": { "getProfile": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The user's email address. The special value me can be used to indicate the authenticated user. default: me" } } }, "stop": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "consum [...]
-    "threads": { "methods": { "delete": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "ID of the Thread to delete" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": fal [...]
-    "drafts": { "methods": { "create": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.Draft", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.Draft media metadata or null if none" }, "mediaContent": { "kind": "parameter", "displayName": "Media Content", "group": "consumer", "label": "", "requir [...]
-    "labels": { "methods": { "create": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.Label", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.Label" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": " [...]
-    "history": { "methods": { "list": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The user's email address. The special value me can be used to indicate the authenticated user. default: me" } } } } },
-    "attachments": { "methods": { "get": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the attachment" }, "messageId": { "kind": "parameter", "displayName": "Message Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret" [...]
-    "messages": { "methods": { "batchDelete": { "properties": { "batchDeleteMessagesRequest": { "kind": "parameter", "displayName": "Batch Delete Messages Request", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.BatchDeleteMessagesRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.BatchDeleteMessagesRequest" }, "userId": { "kind": "parameter", "displayName": "User [...]
+    "users": { "methods": { "getProfile": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The user's email address. The special value me can be used to indicate the authenticated user. default: me", "optional": false } } }, "stop": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id [...]
+    "threads": { "methods": { "delete": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "ID of the Thread to delete", "optional": false }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": f [...]
+    "drafts": { "methods": { "create": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.Draft", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.Draft media metadata or null if none", "optional": false }, "mediaContent": { "kind": "parameter", "displayName": "Media Content", "group": "consumer", " [...]
+    "labels": { "methods": { "create": { "properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.Label", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.Label", "optional": false }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "str [...]
+    "history": { "methods": { "list": { "properties": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The user's email address. The special value me can be used to indicate the authenticated user. default: me", "optional": false } } } } },
+    "attachments": { "methods": { "get": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The ID of the attachment", "optional": false }, "messageId": { "kind": "parameter", "displayName": "Message Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecate [...]
+    "messages": { "methods": { "batchDelete": { "properties": { "batchDeleteMessagesRequest": { "kind": "parameter", "displayName": "Batch Delete Messages Request", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.BatchDeleteMessagesRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.gmail.model.BatchDeleteMessagesRequest", "optional": false }, "userId": { "kind": "parameter", " [...]
   }
 }
diff --git a/components/camel-google-mail/src/main/docs/google-mail-component.adoc b/components/camel-google-mail/src/main/docs/google-mail-component.adoc
index 710ed7e..f2c980b 100644
--- a/components/camel-google-mail/src/main/docs/google-mail-component.adoc
+++ b/components/camel-google-mail/src/main/docs/google-mail-component.adoc
@@ -201,21 +201,19 @@ The users API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| getProfile | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| stop | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| watch | *content* | The com.google.api.services.gmail.model.WatchRequest | WatchRequest
-| watch | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| getProfile | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| stop | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| watch | *content* |  The com.google.api.services.gmail.model.WatchRequest | WatchRequest
+| watch | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the users API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail.parameter`.
+The message header name must be of the format `CamelGoogleMail.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail.myParameterNameHere` header.
+would override a `CamelGoogleMail.myParameterNameHere` header.
 
 
 
@@ -266,29 +264,27 @@ The threads API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *id* | ID of the Thread to delete | String
-| delete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| get | *id* | The ID of the thread to retrieve | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| modify | *content* | The com.google.api.services.gmail.model.ModifyThreadRequest | ModifyThreadRequest
-| modify | *id* | The ID of the thread to modify | String
-| modify | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| trash | *id* | The ID of the thread to Trash | String
-| trash | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| untrash | *id* | The ID of the thread to remove from Trash | String
-| untrash | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| delete | *id* |  ID of the Thread to delete | String
+| delete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the thread to retrieve | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| modify | *content* |  The com.google.api.services.gmail.model.ModifyThreadRequest | ModifyThreadRequest
+| modify | *id* |  The ID of the thread to modify | String
+| modify | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| trash | *id* |  The ID of the thread to Trash | String
+| trash | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| untrash | *id* |  The ID of the thread to remove from Trash | String
+| untrash | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the threads API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail.parameter`.
+The message header name must be of the format `CamelGoogleMail.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail.myParameterNameHere` header.
+would override a `CamelGoogleMail.myParameterNameHere` header.
 
 
 
@@ -345,32 +341,30 @@ The drafts API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *content* | The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
-| create | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| create | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| delete | *id* | The ID of the draft to delete | String
-| delete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| get | *id* | The ID of the draft to retrieve | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| send | *content* | The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
-| send | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| send | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| update | *content* | The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
-| update | *id* |  | String
-| update | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| update | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| create | *content* |  The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
+| create | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| create | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| delete | *id* |  The ID of the draft to delete | String
+| delete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the draft to retrieve | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| send | *content* |  The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
+| send | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| send | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| update | *content* |  The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
+| update | *id* |   | String
+| update | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| update | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the drafts API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail.parameter`.
+The message header name must be of the format `CamelGoogleMail.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail.myParameterNameHere` header.
+would override a `CamelGoogleMail.myParameterNameHere` header.
 
 
 
@@ -421,30 +415,28 @@ The labels API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *content* | The com.google.api.services.gmail.model.Label | Label
-| create | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| delete | *id* | The ID of the label to delete | String
-| delete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| get | *id* | The ID of the label to retrieve | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| patch | *content* | The com.google.api.services.gmail.model.Label | Label
-| patch | *id* | The ID of the label to update | String
-| patch | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| update | *content* | The com.google.api.services.gmail.model.Label | Label
-| update | *id* | The ID of the label to update | String
-| update | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| create | *content* |  The com.google.api.services.gmail.model.Label | Label
+| create | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| delete | *id* |  The ID of the label to delete | String
+| delete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the label to retrieve | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| patch | *content* |  The com.google.api.services.gmail.model.Label | Label
+| patch | *id* |  The ID of the label to update | String
+| patch | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| update | *content* |  The com.google.api.services.gmail.model.Label | Label
+| update | *id* |  The ID of the label to update | String
+| update | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the labels API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail.parameter`.
+The message header name must be of the format `CamelGoogleMail.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail.myParameterNameHere` header.
+would override a `CamelGoogleMail.myParameterNameHere` header.
 
 
 
@@ -480,18 +472,16 @@ The history API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the history API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail.parameter`.
+The message header name must be of the format `CamelGoogleMail.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail.myParameterNameHere` header.
+would override a `CamelGoogleMail.myParameterNameHere` header.
 
 
 
@@ -527,20 +517,18 @@ The attachments API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| get | *id* | The ID of the attachment | String
-| get | *messageId* | The ID of the message containing the attachment | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the attachment | String
+| get | *messageId* |  The ID of the message containing the attachment | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the attachments API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail.parameter`.
+The message header name must be of the format `CamelGoogleMail.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail.myParameterNameHere` header.
+would override a `CamelGoogleMail.myParameterNameHere` header.
 
 
 
@@ -612,42 +600,40 @@ The messages API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| batchDelete | *batchDeleteMessagesRequest* | The com.google.api.services.gmail.model.BatchDeleteMessagesRequest | BatchDeleteMessagesRequest
-| batchDelete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| batchModify | *batchModifyMessagesRequest* | The com.google.api.services.gmail.model.BatchModifyMessagesRequest | BatchModifyMessagesRequest
-| batchModify | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| delete | *id* | The ID of the message to delete | String
-| delete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| get | *id* | The ID of the message to retrieve | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| gmailImport | *content* | The com.google.api.services.gmail.model.Message media metadata or null if none | Message
-| gmailImport | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| gmailImport | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| insert | *content* | The com.google.api.services.gmail.model.Message media metadata or null if none | Message
-| insert | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| insert | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| modify | *id* | The ID of the message to modify | String
-| modify | *modifyMessageRequest* | The com.google.api.services.gmail.model.ModifyMessageRequest | ModifyMessageRequest
-| modify | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| send | *content* | The com.google.api.services.gmail.model.Message media metadata or null if none | Message
-| send | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| send | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| trash | *id* | The ID of the message to Trash | String
-| trash | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| untrash | *id* | The ID of the message to remove from Trash | String
-| untrash | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| batchDelete | *batchDeleteMessagesRequest* |  The com.google.api.services.gmail.model.BatchDeleteMessagesRequest | BatchDeleteMessagesRequest
+| batchDelete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| batchModify | *batchModifyMessagesRequest* |  The com.google.api.services.gmail.model.BatchModifyMessagesRequest | BatchModifyMessagesRequest
+| batchModify | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| delete | *id* |  The ID of the message to delete | String
+| delete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the message to retrieve | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| gmailImport | *content* |  The com.google.api.services.gmail.model.Message media metadata or null if none | Message
+| gmailImport | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| gmailImport | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| insert | *content* |  The com.google.api.services.gmail.model.Message media metadata or null if none | Message
+| insert | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| insert | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| modify | *id* |  The ID of the message to modify | String
+| modify | *modifyMessageRequest* |  The com.google.api.services.gmail.model.ModifyMessageRequest | ModifyMessageRequest
+| modify | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| send | *content* |  The com.google.api.services.gmail.model.Message media metadata or null if none | Message
+| send | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| send | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| trash | *id* |  The ID of the message to Trash | String
+| trash | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| untrash | *id* |  The ID of the message to remove from Trash | String
+| untrash | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the messages API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail.parameter`.
+The message header name must be of the format `CamelGoogleMail.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail.myParameterNameHere` header.
+would override a `CamelGoogleMail.myParameterNameHere` header.
 // endpoint options: END
 
 
diff --git a/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc b/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
index 9772a95..28e4ec8 100644
--- a/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
+++ b/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
@@ -188,21 +188,19 @@ The users API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| getProfile | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| stop | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| watch | *content* | The com.google.api.services.gmail.model.WatchRequest | WatchRequest
-| watch | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| getProfile | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| stop | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| watch | *content* |  The com.google.api.services.gmail.model.WatchRequest | WatchRequest
+| watch | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the users API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail-stream.parameter`.
+The message header name must be of the format `CamelGoogleMailStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail-stream.myParameterNameHere` header.
+would override a `CamelGoogleMailStream.myParameterNameHere` header.
 
 
 
@@ -253,29 +251,27 @@ The threads API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| delete | *id* | ID of the Thread to delete | String
-| delete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| get | *id* | The ID of the thread to retrieve | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| modify | *content* | The com.google.api.services.gmail.model.ModifyThreadRequest | ModifyThreadRequest
-| modify | *id* | The ID of the thread to modify | String
-| modify | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| trash | *id* | The ID of the thread to Trash | String
-| trash | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| untrash | *id* | The ID of the thread to remove from Trash | String
-| untrash | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| delete | *id* |  ID of the Thread to delete | String
+| delete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the thread to retrieve | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| modify | *content* |  The com.google.api.services.gmail.model.ModifyThreadRequest | ModifyThreadRequest
+| modify | *id* |  The ID of the thread to modify | String
+| modify | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| trash | *id* |  The ID of the thread to Trash | String
+| trash | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| untrash | *id* |  The ID of the thread to remove from Trash | String
+| untrash | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the threads API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail-stream.parameter`.
+The message header name must be of the format `CamelGoogleMailStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail-stream.myParameterNameHere` header.
+would override a `CamelGoogleMailStream.myParameterNameHere` header.
 
 
 
@@ -332,32 +328,30 @@ The drafts API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *content* | The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
-| create | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| create | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| delete | *id* | The ID of the draft to delete | String
-| delete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| get | *id* | The ID of the draft to retrieve | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| send | *content* | The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
-| send | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| send | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| update | *content* | The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
-| update | *id* |  | String
-| update | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| update | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| create | *content* |  The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
+| create | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| create | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| delete | *id* |  The ID of the draft to delete | String
+| delete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the draft to retrieve | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| send | *content* |  The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
+| send | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| send | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| update | *content* |  The com.google.api.services.gmail.model.Draft media metadata or null if none | Draft
+| update | *id* |   | String
+| update | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| update | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the drafts API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail-stream.parameter`.
+The message header name must be of the format `CamelGoogleMailStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail-stream.myParameterNameHere` header.
+would override a `CamelGoogleMailStream.myParameterNameHere` header.
 
 
 
@@ -408,30 +402,28 @@ The labels API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| create | *content* | The com.google.api.services.gmail.model.Label | Label
-| create | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| delete | *id* | The ID of the label to delete | String
-| delete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| get | *id* | The ID of the label to retrieve | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| patch | *content* | The com.google.api.services.gmail.model.Label | Label
-| patch | *id* | The ID of the label to update | String
-| patch | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| update | *content* | The com.google.api.services.gmail.model.Label | Label
-| update | *id* | The ID of the label to update | String
-| update | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| create | *content* |  The com.google.api.services.gmail.model.Label | Label
+| create | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| delete | *id* |  The ID of the label to delete | String
+| delete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the label to retrieve | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| patch | *content* |  The com.google.api.services.gmail.model.Label | Label
+| patch | *id* |  The ID of the label to update | String
+| patch | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| update | *content* |  The com.google.api.services.gmail.model.Label | Label
+| update | *id* |  The ID of the label to update | String
+| update | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the labels API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail-stream.parameter`.
+The message header name must be of the format `CamelGoogleMailStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail-stream.myParameterNameHere` header.
+would override a `CamelGoogleMailStream.myParameterNameHere` header.
 
 
 
@@ -467,18 +459,16 @@ The history API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the history API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail-stream.parameter`.
+The message header name must be of the format `CamelGoogleMailStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail-stream.myParameterNameHere` header.
+would override a `CamelGoogleMailStream.myParameterNameHere` header.
 
 
 
@@ -514,20 +504,18 @@ The attachments API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| get | *id* | The ID of the attachment | String
-| get | *messageId* | The ID of the message containing the attachment | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the attachment | String
+| get | *messageId* |  The ID of the message containing the attachment | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the attachments API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail-stream.parameter`.
+The message header name must be of the format `CamelGoogleMailStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail-stream.myParameterNameHere` header.
+would override a `CamelGoogleMailStream.myParameterNameHere` header.
 
 
 
@@ -599,42 +587,40 @@ The messages API method(s) has the following set of parameters listed in the tab
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| batchDelete | *batchDeleteMessagesRequest* | The com.google.api.services.gmail.model.BatchDeleteMessagesRequest | BatchDeleteMessagesRequest
-| batchDelete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| batchModify | *batchModifyMessagesRequest* | The com.google.api.services.gmail.model.BatchModifyMessagesRequest | BatchModifyMessagesRequest
-| batchModify | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| delete | *id* | The ID of the message to delete | String
-| delete | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| get | *id* | The ID of the message to retrieve | String
-| get | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| gmailImport | *content* | The com.google.api.services.gmail.model.Message media metadata or null if none | Message
-| gmailImport | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| gmailImport | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| insert | *content* | The com.google.api.services.gmail.model.Message media metadata or null if none | Message
-| insert | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| insert | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| list | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| modify | *id* | The ID of the message to modify | String
-| modify | *modifyMessageRequest* | The com.google.api.services.gmail.model.ModifyMessageRequest | ModifyMessageRequest
-| modify | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| send | *content* | The com.google.api.services.gmail.model.Message media metadata or null if none | Message
-| send | *mediaContent* | The media HTTP content or null if none | AbstractInputStreamContent
-| send | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| trash | *id* | The ID of the message to Trash | String
-| trash | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
-| untrash | *id* | The ID of the message to remove from Trash | String
-| untrash | *userId* | The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| batchDelete | *batchDeleteMessagesRequest* |  The com.google.api.services.gmail.model.BatchDeleteMessagesRequest | BatchDeleteMessagesRequest
+| batchDelete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| batchModify | *batchModifyMessagesRequest* |  The com.google.api.services.gmail.model.BatchModifyMessagesRequest | BatchModifyMessagesRequest
+| batchModify | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| delete | *id* |  The ID of the message to delete | String
+| delete | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| get | *id* |  The ID of the message to retrieve | String
+| get | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| gmailImport | *content* |  The com.google.api.services.gmail.model.Message media metadata or null if none | Message
+| gmailImport | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| gmailImport | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| insert | *content* |  The com.google.api.services.gmail.model.Message media metadata or null if none | Message
+| insert | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| insert | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| list | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| modify | *id* |  The ID of the message to modify | String
+| modify | *modifyMessageRequest* |  The com.google.api.services.gmail.model.ModifyMessageRequest | ModifyMessageRequest
+| modify | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| send | *content* |  The com.google.api.services.gmail.model.Message media metadata or null if none | Message
+| send | *mediaContent* |  The media HTTP content or null if none | AbstractInputStreamContent
+| send | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| trash | *id* |  The ID of the message to Trash | String
+| trash | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
+| untrash | *id* |  The ID of the message to remove from Trash | String
+| untrash | *userId* |  The user's email address. The special value me can be used to indicate the authenticated user. default: me | String
 |===
 
 In addition to the parameters above, the messages API can also use from the 30 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-mail-stream.parameter`.
+The message header name must be of the format `CamelGoogleMailStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-mail-stream.myParameterNameHere` header.
+would override a `CamelGoogleMailStream.myParameterNameHere` header.
 // endpoint options: END
 
 
diff --git a/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/SheetsSpreadsheetsEndpointConfiguration.java b/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/SheetsSpreadsheetsEndpointConfiguration.java
index 0da1f1b..14d3637 100644
--- a/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/SheetsSpreadsheetsEndpointConfiguration.java
+++ b/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/SheetsSpreadsheetsEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SheetsSpreadsheetsEndpointConfiguration extends GoogleSheetsConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchUpdate", description="The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchUpdate", description="The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest")})
     private com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest batchUpdateSpreadsheetRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="The com.google.api.services.sheets.v4.model.Spreadsheet")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="The com.google.api.services.sheets.v4.model.Spreadsheet")})
     private com.google.api.services.sheets.v4.model.Spreadsheet content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getByDataFilter", description="The com.google.api.services.sheets.v4.model.GetSpreadsheetByDataFilterRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getByDataFilter", description="The com.google.api.services.sheets.v4.model.GetSpreadsheetByDataFilterRequest")})
     private com.google.api.services.sheets.v4.model.GetSpreadsheetByDataFilterRequest getSpreadsheetByDataFilterRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchUpdate", description="The spreadsheet to apply the updates to"), @ApiMethod(methodName = "get", description="The spreadsheet to request"), @ApiMethod(methodName = "getByDataFilter", description="The spreadsheet to request")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchUpdate", description="The spreadsheet to apply the updates to"), @ApiMethod(methodName = "get", description="The spreadsheet to request"), @ApiMethod(methodName = "getByDataFilter", description="The spreadsheet to request")})
     private String spreadsheetId;
 
     public com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest getBatchUpdateSpreadsheetRequest() {
diff --git a/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/SheetsSpreadsheetsValuesEndpointConfiguration.java b/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/SheetsSpreadsheetsValuesEndpointConfiguration.java
index ead4f01..605cb81 100644
--- a/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/SheetsSpreadsheetsValuesEndpointConfiguration.java
+++ b/components/camel-google-sheets/src/generated/java/org/apache/camel/component/google/sheets/SheetsSpreadsheetsValuesEndpointConfiguration.java
@@ -20,31 +20,31 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SheetsSpreadsheetsValuesEndpointConfiguration extends GoogleSheetsConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchClear", description="The com.google.api.services.sheets.v4.model.BatchClearValuesRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchClear", description="The com.google.api.services.sheets.v4.model.BatchClearValuesRequest")})
     private com.google.api.services.sheets.v4.model.BatchClearValuesRequest batchClearValuesRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchGetByDataFilter", description="The com.google.api.services.sheets.v4.model.BatchGetValuesByDataFilterRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchGetByDataFilter", description="The com.google.api.services.sheets.v4.model.BatchGetValuesByDataFilterRequest")})
     private com.google.api.services.sheets.v4.model.BatchGetValuesByDataFilterRequest batchGetValuesByDataFilterRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchUpdateByDataFilter", description="The com.google.api.services.sheets.v4.model.BatchUpdateValuesByDataFilterRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchUpdateByDataFilter", description="The com.google.api.services.sheets.v4.model.BatchUpdateValuesByDataFilterRequest")})
     private com.google.api.services.sheets.v4.model.BatchUpdateValuesByDataFilterRequest batchUpdateValuesByDataFilterRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchUpdate", description="The com.google.api.services.sheets.v4.model.BatchUpdateValuesRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchUpdate", description="The com.google.api.services.sheets.v4.model.BatchUpdateValuesRequest")})
     private com.google.api.services.sheets.v4.model.BatchUpdateValuesRequest batchUpdateValuesRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "clear", description="The com.google.api.services.sheets.v4.model.ClearValuesRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "clear", description="The com.google.api.services.sheets.v4.model.ClearValuesRequest")})
     private com.google.api.services.sheets.v4.model.ClearValuesRequest clearValuesRequest;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batchClearByDataFilter", description="The com.google.api.services.sheets.v4.model.BatchClearValuesByDataFilterRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batchClearByDataFilter", description="The com.google.api.services.sheets.v4.model.BatchClearValuesByDataFilterRequest")})
     private com.google.api.services.sheets.v4.model.BatchClearValuesByDataFilterRequest content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "append", description="The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table."), @ApiMethod(methodName = "clear", description="The A1 notation of the values to clear."), @ApiMethod(methodName = "get", description="The A1 notation of the values to retrieve."), @ApiMethod(methodName = "update", description="The A1 notation of the values to update.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "append", description="The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table."), @ApiMethod(methodName = "clear", description="The A1 notation of the values to clear."), @ApiMethod(methodName = "get", description="The A1 notation of the values to retrieve."), @ApiMethod(methodName = "update", description="The A1 notation of the values to update.")})
     private String range;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "append", description="The ID of the spreadsheet to update"), @ApiMethod(methodName = "batchClear", description="The ID of the spreadsheet to update"), @ApiMethod(methodName = "batchClearByDataFilter", description="The ID of the spreadsheet to update"), @ApiMethod(methodName = "batchGet", description="The ID of the spreadsheet to retrieve data from"), @ApiMethod(methodName = "batchGetByDataFilter", description="The ID of the spreadsheet [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "append", description="The ID of the spreadsheet to update"), @ApiMethod(methodName = "batchClear", description="The ID of the spreadsheet to update"), @ApiMethod(methodName = "batchClearByDataFilter", description="The ID of the spreadsheet to update"), @ApiMethod(methodName = "batchGet", description="The ID of the spreadsheet to retrieve data from"), @ApiMethod(methodName = "batchGetByDataFilter", description="The ID  [...]
     private String spreadsheetId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "append", description="The com.google.api.services.sheets.v4.model.ValueRange"), @ApiMethod(methodName = "update", description="The com.google.api.services.sheets.v4.model.ValueRange")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "append", description="The com.google.api.services.sheets.v4.model.ValueRange"), @ApiMethod(methodName = "update", description="The com.google.api.services.sheets.v4.model.ValueRange")})
     private com.google.api.services.sheets.v4.model.ValueRange values;
 
     public com.google.api.services.sheets.v4.model.BatchClearValuesRequest getBatchClearValuesRequest() {
diff --git a/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/google-sheets.json b/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/google-sheets.json
index 578e396..934e997 100644
--- a/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/google-sheets.json
+++ b/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/google-sheets.json
@@ -72,7 +72,7 @@
     "data": { "methods": { "append": { "description": "Appends values to a spreadsheet", "signatures": [ "com.google.api.services.sheets.v4.Sheets$Spreadsheets$Values$Append append(String spreadsheetId, String range, com.google.api.services.sheets.v4.model.ValueRange content)" ] }, "batchClear": { "description": "Clears one or more ranges of values from a spreadsheet", "signatures": [ "com.google.api.services.sheets.v4.Sheets$Spreadsheets$Values$BatchClear batchClear(String spreadsheetId [...]
   },
   "apiProperties": {
-    "spreadsheets": { "methods": { "batchUpdate": { "properties": { "batchUpdateSpreadsheetRequest": { "kind": "parameter", "displayName": "Batch Update Spreadsheet Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest" }, "spreadsheetId": { "kind": "par [...]
-    "data": { "methods": { "append": { "properties": { "range": { "kind": "parameter", "displayName": "Range", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table." }, "spreadsheetId": { "kind": "parameter", "displayName": "Spreadsheet Id", "group": "common", "label" [...]
+    "spreadsheets": { "methods": { "batchUpdate": { "properties": { "batchUpdateSpreadsheetRequest": { "kind": "parameter", "displayName": "Batch Update Spreadsheet Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest", "optional": false }, "spreadsheet [...]
+    "data": { "methods": { "append": { "properties": { "range": { "kind": "parameter", "displayName": "Range", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table.", "optional": false }, "spreadsheetId": { "kind": "parameter", "displayName": "Spreadsheet Id", "group" [...]
   }
 }
diff --git a/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/stream/google-sheets-stream.json b/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/stream/google-sheets-stream.json
index 40b0a26..b0ec431 100644
--- a/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/stream/google-sheets-stream.json
+++ b/components/camel-google-sheets/src/generated/resources/org/apache/camel/component/google/sheets/stream/google-sheets-stream.json
@@ -84,7 +84,7 @@
     "data": { "methods": { "append": { "description": "Appends values to a spreadsheet", "signatures": [ "com.google.api.services.sheets.v4.Sheets$Spreadsheets$Values$Append append(String spreadsheetId, String range, com.google.api.services.sheets.v4.model.ValueRange content)" ] }, "batchClear": { "description": "Clears one or more ranges of values from a spreadsheet", "signatures": [ "com.google.api.services.sheets.v4.Sheets$Spreadsheets$Values$BatchClear batchClear(String spreadsheetId [...]
   },
   "apiProperties": {
-    "spreadsheets": { "methods": { "batchUpdate": { "properties": { "batchUpdateSpreadsheetRequest": { "kind": "parameter", "displayName": "Batch Update Spreadsheet Request", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest" }, "spreadsheetId": { "kind": "p [...]
-    "data": { "methods": { "append": { "properties": { "range": { "kind": "parameter", "displayName": "Range", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table." }, "spreadsheetId": { "kind": "parameter", "displayName": "Spreadsheet Id", "group": "consumer", "la [...]
+    "spreadsheets": { "methods": { "batchUpdate": { "properties": { "batchUpdateSpreadsheetRequest": { "kind": "parameter", "displayName": "Batch Update Spreadsheet Request", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest", "deprecated": false, "secret": false, "description": "The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest", "optional": false }, "spreadshe [...]
+    "data": { "methods": { "append": { "properties": { "range": { "kind": "parameter", "displayName": "Range", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table.", "optional": false }, "spreadsheetId": { "kind": "parameter", "displayName": "Spreadsheet Id", "grou [...]
   }
 }
diff --git a/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc b/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
index 487db2e..d18c7fe 100644
--- a/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
+++ b/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
@@ -200,23 +200,21 @@ The spreadsheets API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| batchUpdate | *batchUpdateSpreadsheetRequest* | The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest | BatchUpdateSpreadsheetRequest
-| batchUpdate | *spreadsheetId* | The spreadsheet to apply the updates to | String
-| create | *content* | The com.google.api.services.sheets.v4.model.Spreadsheet | Spreadsheet
-| get | *spreadsheetId* | The spreadsheet to request | String
-| getByDataFilter | *getSpreadsheetByDataFilter Request* | The com.google.api.services.sheets.v4.model.GetSpreadsheetByDataFilterRequest | GetSpreadsheetByDataFilterRequest
-| getByDataFilter | *spreadsheetId* | The spreadsheet to request | String
+| batchUpdate | *batchUpdateSpreadsheetRequest* |  The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest | BatchUpdateSpreadsheetRequest
+| batchUpdate | *spreadsheetId* |  The spreadsheet to apply the updates to | String
+| create | *content* |  The com.google.api.services.sheets.v4.model.Spreadsheet | Spreadsheet
+| get | *spreadsheetId* |  The spreadsheet to request | String
+| getByDataFilter | *getSpreadsheetByDataFilter Request* |  The com.google.api.services.sheets.v4.model.GetSpreadsheetByDataFilterRequest | GetSpreadsheetByDataFilterRequest
+| getByDataFilter | *spreadsheetId* |  The spreadsheet to request | String
 |===
 
 In addition to the parameters above, the spreadsheets API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-sheets.parameter`.
+The message header name must be of the format `CamelGoogleSheets.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-sheets.myParameterNameHere` header.
+would override a `CamelGoogleSheets.myParameterNameHere` header.
 
 
 
@@ -279,39 +277,37 @@ The data API method(s) has the following set of parameters listed in the table b
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| append | *range* | The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table. | String
-| append | *spreadsheetId* | The ID of the spreadsheet to update | String
-| append | *values* | The com.google.api.services.sheets.v4.model.ValueRange | ValueRange
-| batchClear | *batchClearValuesRequest* | The com.google.api.services.sheets.v4.model.BatchClearValuesRequest | BatchClearValuesRequest
-| batchClear | *spreadsheetId* | The ID of the spreadsheet to update | String
-| batchClearByDataFilter | *content* | The com.google.api.services.sheets.v4.model.BatchClearValuesByDataFilterRequest | BatchClearValuesByDataFilterRequest
-| batchClearByDataFilter | *spreadsheetId* | The ID of the spreadsheet to update | String
-| batchGet | *spreadsheetId* | The ID of the spreadsheet to retrieve data from | String
-| batchGetByDataFilter | *batchGetValuesByDataFilter Request* | The com.google.api.services.sheets.v4.model.BatchGetValuesByDataFilterRequest | BatchGetValuesByDataFilterRequest
-| batchGetByDataFilter | *spreadsheetId* | The ID of the spreadsheet to retrieve data from | String
-| batchUpdate | *batchUpdateValuesRequest* | The com.google.api.services.sheets.v4.model.BatchUpdateValuesRequest | BatchUpdateValuesRequest
-| batchUpdate | *spreadsheetId* | The ID of the spreadsheet to update | String
-| batchUpdateByDataFilter | *batchUpdateValuesByDataFilter Request* | The com.google.api.services.sheets.v4.model.BatchUpdateValuesByDataFilterRequest | BatchUpdateValuesByDataFilterRequest
-| batchUpdateByDataFilter | *spreadsheetId* | The ID of the spreadsheet to update | String
-| clear | *clearValuesRequest* | The com.google.api.services.sheets.v4.model.ClearValuesRequest | ClearValuesRequest
-| clear | *range* | The A1 notation of the values to clear. | String
-| clear | *spreadsheetId* | The ID of the spreadsheet to update | String
-| get | *range* | The A1 notation of the values to retrieve. | String
-| get | *spreadsheetId* | The ID of the spreadsheet to retrieve data from | String
-| update | *range* | The A1 notation of the values to update. | String
-| update | *spreadsheetId* | The ID of the spreadsheet to update | String
-| update | *values* | The com.google.api.services.sheets.v4.model.ValueRange | ValueRange
+| append | *range* |  The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table. | String
+| append | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| append | *values* |  The com.google.api.services.sheets.v4.model.ValueRange | ValueRange
+| batchClear | *batchClearValuesRequest* |  The com.google.api.services.sheets.v4.model.BatchClearValuesRequest | BatchClearValuesRequest
+| batchClear | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| batchClearByDataFilter | *content* |  The com.google.api.services.sheets.v4.model.BatchClearValuesByDataFilterRequest | BatchClearValuesByDataFilterRequest
+| batchClearByDataFilter | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| batchGet | *spreadsheetId* |  The ID of the spreadsheet to retrieve data from | String
+| batchGetByDataFilter | *batchGetValuesByDataFilter Request* |  The com.google.api.services.sheets.v4.model.BatchGetValuesByDataFilterRequest | BatchGetValuesByDataFilterRequest
+| batchGetByDataFilter | *spreadsheetId* |  The ID of the spreadsheet to retrieve data from | String
+| batchUpdate | *batchUpdateValuesRequest* |  The com.google.api.services.sheets.v4.model.BatchUpdateValuesRequest | BatchUpdateValuesRequest
+| batchUpdate | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| batchUpdateByDataFilter | *batchUpdateValuesByDataFilter Request* |  The com.google.api.services.sheets.v4.model.BatchUpdateValuesByDataFilterRequest | BatchUpdateValuesByDataFilterRequest
+| batchUpdateByDataFilter | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| clear | *clearValuesRequest* |  The com.google.api.services.sheets.v4.model.ClearValuesRequest | ClearValuesRequest
+| clear | *range* |  The A1 notation of the values to clear. | String
+| clear | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| get | *range* |  The A1 notation of the values to retrieve. | String
+| get | *spreadsheetId* |  The ID of the spreadsheet to retrieve data from | String
+| update | *range* |  The A1 notation of the values to update. | String
+| update | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| update | *values* |  The com.google.api.services.sheets.v4.model.ValueRange | ValueRange
 |===
 
 In addition to the parameters above, the data API can also use from the 28 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-sheets.parameter`.
+The message header name must be of the format `CamelGoogleSheets.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-sheets.myParameterNameHere` header.
+would override a `CamelGoogleSheets.myParameterNameHere` header.
 // endpoint options: END
 
 
diff --git a/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc b/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
index 4d5129f..f0fe6d7 100644
--- a/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
+++ b/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
@@ -201,23 +201,21 @@ The spreadsheets API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| batchUpdate | *batchUpdateSpreadsheetRequest* | The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest | BatchUpdateSpreadsheetRequest
-| batchUpdate | *spreadsheetId* | The spreadsheet to apply the updates to | String
-| create | *content* | The com.google.api.services.sheets.v4.model.Spreadsheet | Spreadsheet
-| get | *spreadsheetId* | The spreadsheet to request | String
-| getByDataFilter | *getSpreadsheetByDataFilter Request* | The com.google.api.services.sheets.v4.model.GetSpreadsheetByDataFilterRequest | GetSpreadsheetByDataFilterRequest
-| getByDataFilter | *spreadsheetId* | The spreadsheet to request | String
+| batchUpdate | *batchUpdateSpreadsheetRequest* |  The com.google.api.services.sheets.v4.model.BatchUpdateSpreadsheetRequest | BatchUpdateSpreadsheetRequest
+| batchUpdate | *spreadsheetId* |  The spreadsheet to apply the updates to | String
+| create | *content* |  The com.google.api.services.sheets.v4.model.Spreadsheet | Spreadsheet
+| get | *spreadsheetId* |  The spreadsheet to request | String
+| getByDataFilter | *getSpreadsheetByDataFilter Request* |  The com.google.api.services.sheets.v4.model.GetSpreadsheetByDataFilterRequest | GetSpreadsheetByDataFilterRequest
+| getByDataFilter | *spreadsheetId* |  The spreadsheet to request | String
 |===
 
 In addition to the parameters above, the spreadsheets API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-sheets-stream.parameter`.
+The message header name must be of the format `CamelGoogleSheetsStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-sheets-stream.myParameterNameHere` header.
+would override a `CamelGoogleSheetsStream.myParameterNameHere` header.
 
 
 
@@ -280,39 +278,37 @@ The data API method(s) has the following set of parameters listed in the table b
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| append | *range* | The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table. | String
-| append | *spreadsheetId* | The ID of the spreadsheet to update | String
-| append | *values* | The com.google.api.services.sheets.v4.model.ValueRange | ValueRange
-| batchClear | *batchClearValuesRequest* | The com.google.api.services.sheets.v4.model.BatchClearValuesRequest | BatchClearValuesRequest
-| batchClear | *spreadsheetId* | The ID of the spreadsheet to update | String
-| batchClearByDataFilter | *content* | The com.google.api.services.sheets.v4.model.BatchClearValuesByDataFilterRequest | BatchClearValuesByDataFilterRequest
-| batchClearByDataFilter | *spreadsheetId* | The ID of the spreadsheet to update | String
-| batchGet | *spreadsheetId* | The ID of the spreadsheet to retrieve data from | String
-| batchGetByDataFilter | *batchGetValuesByDataFilter Request* | The com.google.api.services.sheets.v4.model.BatchGetValuesByDataFilterRequest | BatchGetValuesByDataFilterRequest
-| batchGetByDataFilter | *spreadsheetId* | The ID of the spreadsheet to retrieve data from | String
-| batchUpdate | *batchUpdateValuesRequest* | The com.google.api.services.sheets.v4.model.BatchUpdateValuesRequest | BatchUpdateValuesRequest
-| batchUpdate | *spreadsheetId* | The ID of the spreadsheet to update | String
-| batchUpdateByDataFilter | *batchUpdateValuesByDataFilter Request* | The com.google.api.services.sheets.v4.model.BatchUpdateValuesByDataFilterRequest | BatchUpdateValuesByDataFilterRequest
-| batchUpdateByDataFilter | *spreadsheetId* | The ID of the spreadsheet to update | String
-| clear | *clearValuesRequest* | The com.google.api.services.sheets.v4.model.ClearValuesRequest | ClearValuesRequest
-| clear | *range* | The A1 notation of the values to clear. | String
-| clear | *spreadsheetId* | The ID of the spreadsheet to update | String
-| get | *range* | The A1 notation of the values to retrieve. | String
-| get | *spreadsheetId* | The ID of the spreadsheet to retrieve data from | String
-| update | *range* | The A1 notation of the values to update. | String
-| update | *spreadsheetId* | The ID of the spreadsheet to update | String
-| update | *values* | The com.google.api.services.sheets.v4.model.ValueRange | ValueRange
+| append | *range* |  The A1 notation of a range to search for a logical table of data. Values will be appended after the last row of the table. | String
+| append | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| append | *values* |  The com.google.api.services.sheets.v4.model.ValueRange | ValueRange
+| batchClear | *batchClearValuesRequest* |  The com.google.api.services.sheets.v4.model.BatchClearValuesRequest | BatchClearValuesRequest
+| batchClear | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| batchClearByDataFilter | *content* |  The com.google.api.services.sheets.v4.model.BatchClearValuesByDataFilterRequest | BatchClearValuesByDataFilterRequest
+| batchClearByDataFilter | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| batchGet | *spreadsheetId* |  The ID of the spreadsheet to retrieve data from | String
+| batchGetByDataFilter | *batchGetValuesByDataFilter Request* |  The com.google.api.services.sheets.v4.model.BatchGetValuesByDataFilterRequest | BatchGetValuesByDataFilterRequest
+| batchGetByDataFilter | *spreadsheetId* |  The ID of the spreadsheet to retrieve data from | String
+| batchUpdate | *batchUpdateValuesRequest* |  The com.google.api.services.sheets.v4.model.BatchUpdateValuesRequest | BatchUpdateValuesRequest
+| batchUpdate | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| batchUpdateByDataFilter | *batchUpdateValuesByDataFilter Request* |  The com.google.api.services.sheets.v4.model.BatchUpdateValuesByDataFilterRequest | BatchUpdateValuesByDataFilterRequest
+| batchUpdateByDataFilter | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| clear | *clearValuesRequest* |  The com.google.api.services.sheets.v4.model.ClearValuesRequest | ClearValuesRequest
+| clear | *range* |  The A1 notation of the values to clear. | String
+| clear | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| get | *range* |  The A1 notation of the values to retrieve. | String
+| get | *spreadsheetId* |  The ID of the spreadsheet to retrieve data from | String
+| update | *range* |  The A1 notation of the values to update. | String
+| update | *spreadsheetId* |  The ID of the spreadsheet to update | String
+| update | *values* |  The com.google.api.services.sheets.v4.model.ValueRange | ValueRange
 |===
 
 In addition to the parameters above, the data API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
-The message header name must be of the format `CamelGoogle-sheets-stream.parameter`.
+The message header name must be of the format `CamelGoogleSheetsStream.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
-would override a `CamelGoogle-sheets-stream.myParameterNameHere` header.
+would override a `CamelGoogleSheetsStream.myParameterNameHere` header.
 // endpoint options: END
 
 
diff --git a/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2AppEndpointConfiguration.java b/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2AppEndpointConfiguration.java
index 44a0c83..390b547 100644
--- a/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2AppEndpointConfiguration.java
+++ b/components/camel-olingo2/camel-olingo2-component/src/generated/java/org/apache/camel/component/olingo2/Olingo2AppEndpointConfiguration.java
@@ -20,25 +20,25 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class Olingo2AppEndpointConfiguration extends Olingo2Configuration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batch", description="Ordered org.apache.camel.component.olingo2.api.batch.Olingo2BatchRequest list"), @ApiMethod(methodName = "create", description="Request data"), @ApiMethod(methodName = "merge", description="Patch/merge data"), @ApiMethod(methodName = "patch", description="Patch/merge data"), @ApiMethod(methodName = "update", description="Updated data")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "batch", description="Ordered org.apache.camel.component.olingo2.api.batch.Olingo2BatchRequest list"), @ApiMethod(methodName = "create", description="Request data"), @ApiMethod(methodName = "merge", description="Patch/merge data"), @ApiMethod(methodName = "patch", description="Patch/merge data"), @ApiMethod(methodName = "update", description="Updated data")})
     private Object data;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batch", description="Service Edm"), @ApiMethod(methodName = "create", description="Service Edm"), @ApiMethod(methodName = "merge", description="Service Edm"), @ApiMethod(methodName = "patch", description="Service Edm"), @ApiMethod(methodName = "read", description="Service Edm, read from calling read(null, $metdata, null, responseHandler)"), @ApiMethod(methodName = "update", description="Service Edm"), @ApiMethod(methodName = "uread", d [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "batch", description="Service Edm"), @ApiMethod(methodName = "create", description="Service Edm"), @ApiMethod(methodName = "merge", description="Service Edm"), @ApiMethod(methodName = "patch", description="Service Edm"), @ApiMethod(methodName = "read", description="Service Edm, read from calling read(null, $metdata, null, responseHandler)"), @ApiMethod(methodName = "update", description="Service Edm"), @ApiMethod(method [...]
     private org.apache.olingo.odata2.api.edm.Edm edm;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batch", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "create", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "delete", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "merge", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "patch", description="HTTP Headers [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "batch", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "create", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "delete", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "merge", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "patch", descript [...]
     private java.util.Map<String, String> endpointHttpHeaders;
     @UriParam
-    @ApiParam(apiMethods = {})
+    @ApiParam(optional = false, apiMethods = {})
     private java.lang.String keyPredicate;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "read", description="OData query params from http://www.odata.org/documentation/odata-version-2-0/uri-conventions#SystemQueryOptions"), @ApiMethod(methodName = "uread", description="OData query params from http://www.odata.org/documentation/odata-version-2-0/uri-conventions#SystemQueryOptions")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "read", description="OData query params from http://www.odata.org/documentation/odata-version-2-0/uri-conventions#SystemQueryOptions"), @ApiMethod(methodName = "uread", description="OData query params from http://www.odata.org/documentation/odata-version-2-0/uri-conventions#SystemQueryOptions")})
     private java.util.Map<String, String> queryParams;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "create", description="Resource path to create"), @ApiMethod(methodName = "delete", description="Resource path for Entry"), @ApiMethod(methodName = "merge", description="Resource path to update"), @ApiMethod(methodName = "patch", description="Resource path to update"), @ApiMethod(methodName = "read", description="OData Resource path"), @ApiMethod(methodName = "update", description="Resource path to update"), @ApiMethod(methodName = "ure [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "create", description="Resource path to create"), @ApiMethod(methodName = "delete", description="Resource path for Entry"), @ApiMethod(methodName = "merge", description="Resource path to update"), @ApiMethod(methodName = "patch", description="Resource path to update"), @ApiMethod(methodName = "read", description="OData Resource path"), @ApiMethod(methodName = "update", description="Resource path to update"), @ApiMethod [...]
     private String resourcePath;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "batch", description="Callback handler"), @ApiMethod(methodName = "create", description="Callback handler"), @ApiMethod(methodName = "delete", description="Org.apache.olingo.odata2.api.commons.HttpStatusCodes callback handler"), @ApiMethod(methodName = "merge", description="Org.apache.olingo.odata2.api.ep.entry.ODataEntry callback handler"), @ApiMethod(methodName = "patch", description="Org.apache.olingo.odata2.api.ep.entry.ODataEntry c [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "batch", description="Callback handler"), @ApiMethod(methodName = "create", description="Callback handler"), @ApiMethod(methodName = "delete", description="Org.apache.olingo.odata2.api.commons.HttpStatusCodes callback handler"), @ApiMethod(methodName = "merge", description="Org.apache.olingo.odata2.api.ep.entry.ODataEntry callback handler"), @ApiMethod(methodName = "patch", description="Org.apache.olingo.odata2.api.ep.e [...]
     private org.apache.camel.component.olingo2.api.Olingo2ResponseHandler<java.util.List<org.apache.camel.component.olingo2.api.batch.Olingo2BatchResponse>> responseHandler;
 
     public Object getData() {
diff --git a/components/camel-olingo2/camel-olingo2-component/src/generated/resources/org/apache/camel/component/olingo2/olingo2.json b/components/camel-olingo2/camel-olingo2-component/src/generated/resources/org/apache/camel/component/olingo2/olingo2.json
index c761ce2..e2152b3 100644
--- a/components/camel-olingo2/camel-olingo2-component/src/generated/resources/org/apache/camel/component/olingo2/olingo2.json
+++ b/components/camel-olingo2/camel-olingo2-component/src/generated/resources/org/apache/camel/component/olingo2/olingo2.json
@@ -86,6 +86,6 @@
     "DEFAULT": { "methods": { "batch": { "description": "Executes a batch request", "signatures": [ "void batch(org.apache.olingo.odata2.api.edm.Edm edm, java.util.Map<String, String> endpointHttpHeaders, Object data, org.apache.camel.component.olingo2.api.Olingo2ResponseHandler<java.util.List<org.apache.camel.component.olingo2.api.batch.Olingo2BatchResponse>> responseHandler)" ] }, "create": { "description": "Creates a new OData resource", "signatures": [ "void create(org.apache.olingo. [...]
   },
   "apiProperties": {
-    "DEFAULT": { "methods": { "batch": { "properties": { "data": { "kind": "parameter", "displayName": "Data", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "description": "Ordered org.apache.camel.component.olingo2.api.batch.Olingo2BatchRequest list" }, "edm": { "kind": "parameter", "displayName": "Edm", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache [...]
+    "DEFAULT": { "methods": { "batch": { "properties": { "data": { "kind": "parameter", "displayName": "Data", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "description": "Ordered org.apache.camel.component.olingo2.api.batch.Olingo2BatchRequest list", "optional": false }, "edm": { "kind": "parameter", "displayName": "Edm", "group": "common", "label": "", "required": false, "type": "object", "jav [...]
   }
 }
diff --git a/components/camel-olingo2/camel-olingo2-component/src/main/docs/olingo2-component.adoc b/components/camel-olingo2/camel-olingo2-component/src/main/docs/olingo2-component.adoc
index 0a0ef80..0032798 100644
--- a/components/camel-olingo2/camel-olingo2-component/src/main/docs/olingo2-component.adoc
+++ b/components/camel-olingo2/camel-olingo2-component/src/main/docs/olingo2-component.adoc
@@ -217,50 +217,48 @@ The DEFAULT API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| batch | *data* | Ordered org.apache.camel.component.olingo2.api.batch.Olingo2BatchRequest list | Object
-| batch | *edm* | Service Edm | Edm
-| batch | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| batch | *responseHandler* | Callback handler | Olingo2ResponseHandler
-| create | *data* | Request data | Object
-| create | *edm* | Service Edm | Edm
-| create | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| create | *resourcePath* | Resource path to create | String
-| create | *responseHandler* | Callback handler | Olingo2ResponseHandler
-| delete | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| delete | *resourcePath* | Resource path for Entry | String
-| delete | *responseHandler* | Org.apache.olingo.odata2.api.commons.HttpStatusCodes callback handler | Olingo2ResponseHandler
-| merge | *data* | Patch/merge data | Object
-| merge | *edm* | Service Edm | Edm
-| merge | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| merge | *resourcePath* | Resource path to update | String
-| merge | *responseHandler* | Org.apache.olingo.odata2.api.ep.entry.ODataEntry callback handler | Olingo2ResponseHandler
-| patch | *data* | Patch/merge data | Object
-| patch | *edm* | Service Edm | Edm
-| patch | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| patch | *resourcePath* | Resource path to update | String
-| patch | *responseHandler* | Org.apache.olingo.odata2.api.ep.entry.ODataEntry callback handler | Olingo2ResponseHandler
-| read | *edm* | Service Edm, read from calling read(null, \$metdata, null, responseHandler) | Edm
-| read | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| read | *queryParams* | OData query params from \http://www.odata.org/documentation/odata-version-2-0/uri-conventions#SystemQueryOptions | Map
-| read | *resourcePath* | OData Resource path | String
-| read | *responseHandler* | Callback handler | Olingo2ResponseHandler
-| update | *data* | Updated data | Object
-| update | *edm* | Service Edm | Edm
-| update | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| update | *resourcePath* | Resource path to update | String
-| update | *responseHandler* | Org.apache.olingo.odata2.api.ep.entry.ODataEntry callback handler | Olingo2ResponseHandler
-| uread | *edm* | Service Edm, read from calling read(null, \$metdata, null, responseHandler) | Edm
-| uread | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| uread | *queryParams* | OData query params from \http://www.odata.org/documentation/odata-version-2-0/uri-conventions#SystemQueryOptions | Map
-| uread | *resourcePath* | OData Resource path | String
-| uread | *responseHandler* | Callback handler | Olingo2ResponseHandler
+| batch | *data* |  Ordered org.apache.camel.component.olingo2.api.batch.Olingo2BatchRequest list | Object
+| batch | *edm* | *Optional*  Service Edm | Edm
+| batch | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| batch | *responseHandler* | *Optional*  Callback handler | Olingo2ResponseHandler
+| create | *data* |  Request data | Object
+| create | *edm* | *Optional*  Service Edm | Edm
+| create | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| create | *resourcePath* |  Resource path to create | String
+| create | *responseHandler* | *Optional*  Callback handler | Olingo2ResponseHandler
+| delete | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| delete | *resourcePath* |  Resource path for Entry | String
+| delete | *responseHandler* | *Optional*  Org.apache.olingo.odata2.api.commons.HttpStatusCodes callback handler | Olingo2ResponseHandler
+| merge | *data* |  Patch/merge data | Object
+| merge | *edm* | *Optional*  Service Edm | Edm
+| merge | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| merge | *resourcePath* |  Resource path to update | String
+| merge | *responseHandler* | *Optional*  Org.apache.olingo.odata2.api.ep.entry.ODataEntry callback handler | Olingo2ResponseHandler
+| patch | *data* |  Patch/merge data | Object
+| patch | *edm* | *Optional*  Service Edm | Edm
+| patch | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| patch | *resourcePath* |  Resource path to update | String
+| patch | *responseHandler* | *Optional*  Org.apache.olingo.odata2.api.ep.entry.ODataEntry callback handler | Olingo2ResponseHandler
+| read | *edm* | *Optional*  Service Edm, read from calling read(null, \$metdata, null, responseHandler) | Edm
+| read | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| read | *queryParams* | *Optional*  OData query params from \http://www.odata.org/documentation/odata-version-2-0/uri-conventions#SystemQueryOptions | Map
+| read | *resourcePath* |  OData Resource path | String
+| read | *responseHandler* | *Optional*  Callback handler | Olingo2ResponseHandler
+| update | *data* |  Updated data | Object
+| update | *edm* | *Optional*  Service Edm | Edm
+| update | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| update | *resourcePath* |  Resource path to update | String
+| update | *responseHandler* | *Optional*  Org.apache.olingo.odata2.api.ep.entry.ODataEntry callback handler | Olingo2ResponseHandler
+| uread | *edm* | *Optional*  Service Edm, read from calling read(null, \$metdata, null, responseHandler) | Edm
+| uread | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| uread | *queryParams* | *Optional*  OData query params from \http://www.odata.org/documentation/odata-version-2-0/uri-conventions#SystemQueryOptions | Map
+| uread | *resourcePath* |  OData Resource path | String
+| uread | *responseHandler* | *Optional*  Callback handler | Olingo2ResponseHandler
 |===
 
 In addition to the parameters above, the DEFAULT API can also use from the 36 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelOlingo2.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
diff --git a/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4AppEndpointConfiguration.java b/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4AppEndpointConfiguration.java
index 352c2f1..1611505 100644
--- a/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4AppEndpointConfiguration.java
+++ b/components/camel-olingo4/camel-olingo4-component/src/generated/java/org/apache/camel/component/olingo4/Olingo4AppEndpointConfiguration.java
@@ -20,25 +20,25 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class Olingo4AppEndpointConfiguration extends Olingo4Configuration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "action", description="Action data"), @ApiMethod(methodName = "batch", description="Ordered org.apache.camel.component.olingo4.api.batch.Olingo4BatchRequest list"), @ApiMethod(methodName = "create", description="Request data"), @ApiMethod(methodName = "merge", description="Patch/merge data"), @ApiMethod(methodName = "patch", description="Patch/merge data"), @ApiMethod(methodName = "update", description="Updated data")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "action", description="Action data"), @ApiMethod(methodName = "batch", description="Ordered org.apache.camel.component.olingo4.api.batch.Olingo4BatchRequest list"), @ApiMethod(methodName = "create", description="Request data"), @ApiMethod(methodName = "merge", description="Patch/merge data"), @ApiMethod(methodName = "patch", description="Patch/merge data"), @ApiMethod(methodName = "update", description="Updated data")})
     private Object data;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "action", description="Service Edm"), @ApiMethod(methodName = "batch", description="Service Edm"), @ApiMethod(methodName = "create", description="Service Edm"), @ApiMethod(methodName = "merge", description="Service Edm"), @ApiMethod(methodName = "patch", description="Service Edm"), @ApiMethod(methodName = "read", description="Service Edm, read from calling read(null, $metdata, null, responseHandler)"), @ApiMethod(methodName = "update",  [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "action", description="Service Edm"), @ApiMethod(methodName = "batch", description="Service Edm"), @ApiMethod(methodName = "create", description="Service Edm"), @ApiMethod(methodName = "merge", description="Service Edm"), @ApiMethod(methodName = "patch", description="Service Edm"), @ApiMethod(methodName = "read", description="Service Edm, read from calling read(null, $metdata, null, responseHandler)"), @ApiMethod(method [...]
     private org.apache.olingo.commons.api.edm.Edm edm;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "action", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "batch", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "create", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "delete", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "merge", description="HTTP Header [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "action", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "batch", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "create", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "delete", description="HTTP Headers to add/override the component versions"), @ApiMethod(methodName = "merge", descrip [...]
     private java.util.Map<String, String> endpointHttpHeaders;
     @UriParam
-    @ApiParam(apiMethods = {})
+    @ApiParam(optional = false, apiMethods = {})
     private java.lang.String keyPredicate;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "read", description="OData query params http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288"), @ApiMethod(methodName = "uread", description="OData query params http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288")})
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "read", description="OData query params http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288"), @ApiMethod(methodName = "uread", description="OData query params http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288")})
     private java.util.Map<String, String> queryParams;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "action", description="Resource path to action"), @ApiMethod(methodName = "create", description="Resource path to create"), @ApiMethod(methodName = "delete", description="Resource path for Entry"), @ApiMethod(methodName = "merge", description="Resource path to update"), @ApiMethod(methodName = "patch", description="Resource path to update"), @ApiMethod(methodName = "read", description="OData Resource path"), @ApiMethod(methodName = "upd [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "action", description="Resource path to action"), @ApiMethod(methodName = "create", description="Resource path to create"), @ApiMethod(methodName = "delete", description="Resource path for Entry"), @ApiMethod(methodName = "merge", description="Resource path to update"), @ApiMethod(methodName = "patch", description="Resource path to update"), @ApiMethod(methodName = "read", description="OData Resource path"), @ApiMethod [...]
     private String resourcePath;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "action", description="Org.apache.olingo.client.api.domain.ClientEntity callback handler"), @ApiMethod(methodName = "batch", description="Callback handler"), @ApiMethod(methodName = "create", description="Callback handler"), @ApiMethod(methodName = "delete", description="Org.apache.olingo.commons.api.http.HttpStatusCode callback handler"), @ApiMethod(methodName = "merge", description="Org.apache.olingo.client.api.domain.ClientEntity cal [...]
+    @ApiParam(optional = true, apiMethods = {@ApiMethod(methodName = "action", description="Org.apache.olingo.client.api.domain.ClientEntity callback handler"), @ApiMethod(methodName = "batch", description="Callback handler"), @ApiMethod(methodName = "create", description="Callback handler"), @ApiMethod(methodName = "delete", description="Org.apache.olingo.commons.api.http.HttpStatusCode callback handler"), @ApiMethod(methodName = "merge", description="Org.apache.olingo.client.api.domain [...]
     private org.apache.camel.component.olingo4.api.Olingo4ResponseHandler responseHandler;
 
     public Object getData() {
diff --git a/components/camel-olingo4/camel-olingo4-component/src/generated/resources/org/apache/camel/component/olingo4/olingo4.json b/components/camel-olingo4/camel-olingo4-component/src/generated/resources/org/apache/camel/component/olingo4/olingo4.json
index 183747d..c5c5a54 100644
--- a/components/camel-olingo4/camel-olingo4-component/src/generated/resources/org/apache/camel/component/olingo4/olingo4.json
+++ b/components/camel-olingo4/camel-olingo4-component/src/generated/resources/org/apache/camel/component/olingo4/olingo4.json
@@ -82,6 +82,6 @@
     "DEFAULT": { "methods": { "action": { "description": "Calls a OData action", "signatures": [ "void action(org.apache.olingo.commons.api.edm.Edm edm, String resourcePath, java.util.Map<String, String> endpointHttpHeaders, Object data, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler responseHandler)" ] }, "batch": { "description": "Executes a batch request", "signatures": [ "void batch(org.apache.olingo.commons.api.edm.Edm edm, java.util.Map<String, String> endpointHttpHe [...]
   },
   "apiProperties": {
-    "DEFAULT": { "methods": { "action": { "properties": { "data": { "kind": "parameter", "displayName": "Data", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "description": "Action data" }, "edm": { "kind": "parameter", "displayName": "Edm", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.olingo.commons.api.edm.Edm", "deprecated": false, "secret": fals [...]
+    "DEFAULT": { "methods": { "action": { "properties": { "data": { "kind": "parameter", "displayName": "Data", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "description": "Action data", "optional": true }, "edm": { "kind": "parameter", "displayName": "Edm", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.olingo.commons.api.edm.Edm", "deprecated": fal [...]
   }
 }
diff --git a/components/camel-olingo4/camel-olingo4-component/src/main/docs/olingo4-component.adoc b/components/camel-olingo4/camel-olingo4-component/src/main/docs/olingo4-component.adoc
index 078bade..5aa6f43 100644
--- a/components/camel-olingo4/camel-olingo4-component/src/main/docs/olingo4-component.adoc
+++ b/components/camel-olingo4/camel-olingo4-component/src/main/docs/olingo4-component.adoc
@@ -217,55 +217,53 @@ The DEFAULT API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| action | *data* | Action data | Object
-| action | *edm* | Service Edm | Edm
-| action | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| action | *resourcePath* | Resource path to action | String
-| action | *responseHandler* | Org.apache.olingo.client.api.domain.ClientEntity callback handler | Olingo4ResponseHandler
-| batch | *data* | Ordered org.apache.camel.component.olingo4.api.batch.Olingo4BatchRequest list | Object
-| batch | *edm* | Service Edm | Edm
-| batch | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| batch | *responseHandler* | Callback handler | Olingo4ResponseHandler
-| create | *data* | Request data | Object
-| create | *edm* | Service Edm | Edm
-| create | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| create | *resourcePath* | Resource path to create | String
-| create | *responseHandler* | Callback handler | Olingo4ResponseHandler
-| delete | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| delete | *resourcePath* | Resource path for Entry | String
-| delete | *responseHandler* | Org.apache.olingo.commons.api.http.HttpStatusCode callback handler | Olingo4ResponseHandler
-| merge | *data* | Patch/merge data | Object
-| merge | *edm* | Service Edm | Edm
-| merge | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| merge | *resourcePath* | Resource path to update | String
-| merge | *responseHandler* | Org.apache.olingo.client.api.domain.ClientEntity callback handler | Olingo4ResponseHandler
-| patch | *data* | Patch/merge data | Object
-| patch | *edm* | Service Edm | Edm
-| patch | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| patch | *resourcePath* | Resource path to update | String
-| patch | *responseHandler* | Org.apache.olingo.client.api.domain.ClientEntity callback handler | Olingo4ResponseHandler
-| read | *edm* | Service Edm, read from calling read(null, \$metdata, null, responseHandler) | Edm
-| read | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| read | *queryParams* | OData query params \http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288 | Map
-| read | *resourcePath* | OData Resource path | String
-| read | *responseHandler* | Callback handler | Olingo4ResponseHandler
-| update | *data* | Updated data | Object
-| update | *edm* | Service Edm | Edm
-| update | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| update | *resourcePath* | Resource path to update | String
-| update | *responseHandler* | Org.apache.olingo.client.api.domain.ClientEntity callback handler | Olingo4ResponseHandler
-| uread | *edm* | Service Edm, read from calling read(null, \$metdata, null, responseHandler) | Edm
-| uread | *endpointHttpHeaders* | HTTP Headers to add/override the component versions | Map
-| uread | *queryParams* | OData query params \http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288 | Map
-| uread | *resourcePath* | OData Resource path | String
-| uread | *responseHandler* | Callback handler | Olingo4ResponseHandler
+| action | *data* | *Optional*  Action data | Object
+| action | *edm* | *Optional*  Service Edm | Edm
+| action | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| action | *resourcePath* |  Resource path to action | String
+| action | *responseHandler* | *Optional*  Org.apache.olingo.client.api.domain.ClientEntity callback handler | Olingo4ResponseHandler
+| batch | *data* | *Optional*  Ordered org.apache.camel.component.olingo4.api.batch.Olingo4BatchRequest list | Object
+| batch | *edm* | *Optional*  Service Edm | Edm
+| batch | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| batch | *responseHandler* | *Optional*  Callback handler | Olingo4ResponseHandler
+| create | *data* | *Optional*  Request data | Object
+| create | *edm* | *Optional*  Service Edm | Edm
+| create | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| create | *resourcePath* |  Resource path to create | String
+| create | *responseHandler* | *Optional*  Callback handler | Olingo4ResponseHandler
+| delete | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| delete | *resourcePath* |  Resource path for Entry | String
+| delete | *responseHandler* | *Optional*  Org.apache.olingo.commons.api.http.HttpStatusCode callback handler | Olingo4ResponseHandler
+| merge | *data* | *Optional*  Patch/merge data | Object
+| merge | *edm* | *Optional*  Service Edm | Edm
+| merge | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| merge | *resourcePath* |  Resource path to update | String
+| merge | *responseHandler* | *Optional*  Org.apache.olingo.client.api.domain.ClientEntity callback handler | Olingo4ResponseHandler
+| patch | *data* | *Optional*  Patch/merge data | Object
+| patch | *edm* | *Optional*  Service Edm | Edm
+| patch | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| patch | *resourcePath* |  Resource path to update | String
+| patch | *responseHandler* | *Optional*  Org.apache.olingo.client.api.domain.ClientEntity callback handler | Olingo4ResponseHandler
+| read | *edm* | *Optional*  Service Edm, read from calling read(null, \$metdata, null, responseHandler) | Edm
+| read | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| read | *queryParams* | *Optional*  OData query params \http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288 | Map
+| read | *resourcePath* |  OData Resource path | String
+| read | *responseHandler* | *Optional*  Callback handler | Olingo4ResponseHandler
+| update | *data* | *Optional*  Updated data | Object
+| update | *edm* | *Optional*  Service Edm | Edm
+| update | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| update | *resourcePath* |  Resource path to update | String
+| update | *responseHandler* | *Optional*  Org.apache.olingo.client.api.domain.ClientEntity callback handler | Olingo4ResponseHandler
+| uread | *edm* | *Optional*  Service Edm, read from calling read(null, \$metdata, null, responseHandler) | Edm
+| uread | *endpointHttpHeaders* | *Optional*  HTTP Headers to add/override the component versions | Map
+| uread | *queryParams* | *Optional*  OData query params \http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288 | Map
+| uread | *resourcePath* |  OData Resource path | String
+| uread | *responseHandler* | *Optional*  Callback handler | Olingo4ResponseHandler
 |===
 
 In addition to the parameters above, the DEFAULT API can also use from the 34 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelOlingo4.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AccountEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AccountEndpointConfiguration.java
index 4df288f..753c073 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AccountEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AccountEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AccountEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="Fetch by unique Account Sid"), @ApiMethod(methodName = "updater", description="Update by unique Account Sid")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="Fetch by unique Account Sid"), @ApiMethod(methodName = "updater", description="Update by unique Account Sid")})
     private String pathSid;
 
     public String getPathSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AddressDependentPhoneNumberEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AddressDependentPhoneNumberEndpointConfiguration.java
index 6f3f788..5432cd4 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AddressDependentPhoneNumberEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AddressDependentPhoneNumberEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AddressDependentPhoneNumberEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Address resource associated with the phone number"), @ApiMethod(methodName = "reader", description="The SID of the Address resource associated with the phone number")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Address resource associated with the phone number"), @ApiMethod(methodName = "reader", description="The SID of the Address resource associated with the phone number")})
     private String pathAddressSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AddressEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AddressEndpointConfiguration.java
index f1d2693..ae1fee9 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AddressEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AddressEndpointConfiguration.java
@@ -20,28 +20,28 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AddressEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The city of the new address")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The city of the new address")})
     private String city;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The name to associate with the new address")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The name to associate with the new address")})
     private String customerName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The ISO country code of the new address")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The ISO country code of the new address")})
     private String isoCountry;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will be responsible for the new Address resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that is responsible for the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that is responsible for this address"), @ApiMethod(methodName = "reader", description="The SID of the Account that is responsible for this addr [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will be responsible for the new Address resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that is responsible for the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that is responsible for this address"), @ApiMethod(methodName = "reader", description="The SID of the Account that is respons [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The postal code of the new address")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The postal code of the new address")})
     private String postalCode;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The state or region of the new address")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The state or region of the new address")})
     private String region;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The number and street address of the new address")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The number and street address of the new address")})
     private String street;
 
     public String getCity() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ApplicationEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ApplicationEndpointConfiguration.java
index 0e0f04f..42ff85f 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ApplicationEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ApplicationEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ApplicationEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(met [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryEndpointConfiguration.java
index 12ed8a4..7173367 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AvailablePhoneNumberCountryEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account requesting the available phone number Country resource"), @ApiMethod(methodName = "reader", description="The SID of the Account requesting the available phone number Country resources")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account requesting the available phone number Country resource"), @ApiMethod(methodName = "reader", description="The SID of the Account requesting the available phone number Country resources")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The ISO country code of the country to fetch available phone number information about")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The ISO country code of the country to fetch available phone number information about")})
     private String pathCountryCode;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryLocalEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryLocalEndpointConfiguration.java
index ad547a6..20c2d83 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryLocalEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryLocalEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AvailablePhoneNumberCountryLocalEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account requesting the AvailablePhoneNumber resources")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account requesting the AvailablePhoneNumber resources")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers"), @ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers"), @ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers")})
     private String pathCountryCode;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryMobileEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryMobileEndpointConfiguration.java
index 9358490..512ad56 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryMobileEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryMobileEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AvailablePhoneNumberCountryMobileEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account requesting the AvailablePhoneNumber resources")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account requesting the AvailablePhoneNumber resources")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers"), @ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers"), @ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers")})
     private String pathCountryCode;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryTollFreeEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryTollFreeEndpointConfiguration.java
index 242d347..d0bc431 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryTollFreeEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/AvailablePhoneNumberCountryTollFreeEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class AvailablePhoneNumberCountryTollFreeEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account requesting the AvailablePhoneNumber resources")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account requesting the AvailablePhoneNumber resources")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers"), @ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers"), @ApiMethod(methodName = "reader", description="The ISO Country code of the country from which to read phone numbers")})
     private String pathCountryCode;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallEndpointConfiguration.java
index 088391f..eecf824 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallEndpointConfiguration.java
@@ -20,25 +20,25 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CallEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Application resource that will handle the call")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Application resource that will handle the call")})
     private String applicationSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="Twilio number from which to originate the call")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="Twilio number from which to originate the call")})
     private com.twilio.type.Endpoint from;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resource(s) to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read"), @ApiMethod(methodName = " [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resource(s) to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read"), @ApiMet [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies this resource"), @ApiMethod(methodName = "fetcher", description="The SID of the Call resource to fetch"), @ApiMethod(methodName = "updater", description="The unique string that identifies this resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies this resource"), @ApiMethod(methodName = "fetcher", description="The SID of the Call resource to fetch"), @ApiMethod(methodName = "updater", description="The unique string that identifies this resource")})
     private String pathSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="Phone number, SIP address, or client identifier to call")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="Phone number, SIP address, or client identifier to call")})
     private com.twilio.type.Endpoint to;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="TwiML instructions for the call")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="TwiML instructions for the call")})
     private com.twilio.type.Twiml twiml;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The absolute URL that returns TwiML for this call")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The absolute URL that returns TwiML for this call")})
     private java.net.URI url;
 
     public String getApplicationSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallFeedbackEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallFeedbackEndpointConfiguration.java
index fd07ff3..b23e1c6 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallFeedbackEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallFeedbackEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CallFeedbackEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account"), @ApiMethod(methodName = "updater", description="The unique sid that identifies this account")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account"), @ApiMethod(methodName = "updater", description="The unique sid that identifies this account")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The call sid that uniquely identifies the call"), @ApiMethod(methodName = "creator", description="The call sid that uniquely identifies the call"), @ApiMethod(methodName = "fetcher", description="The call sid that uniquely identifies the call"), @ApiMethod(methodName = "fetcher", description="The call sid that uniquely identifies the call"), @ApiMethod(methodName = "updater", description="The call sid that unique [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The call sid that uniquely identifies the call"), @ApiMethod(methodName = "creator", description="The call sid that uniquely identifies the call"), @ApiMethod(methodName = "fetcher", description="The call sid that uniquely identifies the call"), @ApiMethod(methodName = "fetcher", description="The call sid that uniquely identifies the call"), @ApiMethod(methodName = "updater", description="The ca [...]
     private String pathCallSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The call quality expressed as an integer from 1 to 5"), @ApiMethod(methodName = "updater", description="The call quality expressed as an integer from 1 to 5")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The call quality expressed as an integer from 1 to 5"), @ApiMethod(methodName = "updater", description="The call quality expressed as an integer from 1 to 5")})
     private Integer qualityScore;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallFeedbackSummaryEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallFeedbackSummaryEndpointConfiguration.java
index dbd957d..a3b6b75 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallFeedbackSummaryEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallFeedbackSummaryEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CallFeedbackSummaryEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="Only include feedback given on or before this date")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="Only include feedback given on or before this date")})
     private org.joda.time.LocalDate endDate;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "deleter", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "deleter", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="A string that uniquely identifies this feedback summary resource"), @ApiMethod(methodName = "fetcher", description="A string that uniquely identifies this feedback summary resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="A string that uniquely identifies this feedback summary resource"), @ApiMethod(methodName = "fetcher", description="A string that uniquely identifies this feedback summary resource")})
     private String pathSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="Only include feedback given on or after this date")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="Only include feedback given on or after this date")})
     private org.joda.time.LocalDate startDate;
 
     public org.joda.time.LocalDate getEndDate() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallNotificationEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallNotificationEndpointConfiguration.java
index 0985df9..0069160 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallNotificationEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallNotificationEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CallNotificationEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The Call SID of the resource to fetch"), @ApiMethod(methodName = "fetcher", description="The Call SID of the resource to fetch"), @ApiMethod(methodName = "reader", description="The Call SID of the resources to read"), @ApiMethod(methodName = "reader", description="The Call SID of the resource to fetch")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The Call SID of the resource to fetch"), @ApiMethod(methodName = "fetcher", description="The Call SID of the resource to fetch"), @ApiMethod(methodName = "reader", description="The Call SID of the resources to read"), @ApiMethod(methodName = "reader", description="The Call SID of the resource to fetch")})
     private String pathCallSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallRecordingEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallRecordingEndpointConfiguration.java
index 56a895b..5fc4128 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallRecordingEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/CallRecordingEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class CallRecordingEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(met [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Call to associate the resource with"), @ApiMethod(methodName = "creator", description="The SID of the Call to associate the resource with"), @ApiMethod(methodName = "deleter", description="The Call SID of the resources to delete"), @ApiMethod(methodName = "deleter", description="The SID of the Call to associate the resource with"), @ApiMethod(methodName = "fetcher", description="The Call SID of the [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Call to associate the resource with"), @ApiMethod(methodName = "creator", description="The SID of the Call to associate the resource with"), @ApiMethod(methodName = "deleter", description="The Call SID of the resources to delete"), @ApiMethod(methodName = "deleter", description="The SID of the Call to associate the resource with"), @ApiMethod(methodName = "fetcher", description="T [...]
     private String pathCallSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updater", description="The new status of the recording")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updater", description="The new status of the recording")})
     private com.twilio.rest.api.v2010.account.call.Recording.Status status;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConferenceEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConferenceEndpointConfiguration.java
index 76a2598..3180cc1 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConferenceEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConferenceEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ConferenceEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resource(s) to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resource(s) to update")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The unique string that identifies this resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies this resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The unique string that identifies this resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies this resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConferenceParticipantEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConferenceParticipantEndpointConfiguration.java
index 372ac0a..e4fcb01 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConferenceParticipantEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConferenceParticipantEndpointConfiguration.java
@@ -20,19 +20,19 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ConferenceParticipantEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The phone number, Client identifier, or username portion of SIP address that made this call.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The phone number, Client identifier, or username portion of SIP address that made this call.")})
     private com.twilio.type.PhoneNumber from;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(met [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The Call SID or URL encoded label of the participant to delete"), @ApiMethod(methodName = "fetcher", description="The Call SID or URL encoded label of the participant to fetch"), @ApiMethod(methodName = "updater", description="The Call SID or URL encoded label of the participant to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The Call SID or URL encoded label of the participant to delete"), @ApiMethod(methodName = "fetcher", description="The Call SID or URL encoded label of the participant to fetch"), @ApiMethod(methodName = "updater", description="The Call SID or URL encoded label of the participant to update")})
     private String pathCallSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the participant's conference"), @ApiMethod(methodName = "creator", description="The SID of the participant's conference"), @ApiMethod(methodName = "deleter", description="The SID of the conference with the participants to delete"), @ApiMethod(methodName = "deleter", description="The SID of the participant's conference"), @ApiMethod(methodName = "fetcher", description="The SID of the conference with the [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the participant's conference"), @ApiMethod(methodName = "creator", description="The SID of the participant's conference"), @ApiMethod(methodName = "deleter", description="The SID of the conference with the participants to delete"), @ApiMethod(methodName = "deleter", description="The SID of the participant's conference"), @ApiMethod(methodName = "fetcher", description="The SID of the c [...]
     private String pathConferenceSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The phone number, SIP address or Client identifier that received this call.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The phone number, SIP address or Client identifier that received this call.")})
     private com.twilio.type.PhoneNumber to;
 
     public com.twilio.type.PhoneNumber getFrom() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConnectAppEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConnectAppEndpointConfiguration.java
index 5f4a314..8605712 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConnectAppEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ConnectAppEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ConnectAppEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resources to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resources to update")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberEndpointConfiguration.java
index 3e13bc2..123c8f0 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class IncomingPhoneNumberEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The desired area code for the new phone number")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The desired area code for the new phone number")})
     private String areaCode;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(met [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to purchase in E.164 format")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to purchase in E.164 format")})
     private com.twilio.type.PhoneNumber phoneNumber;
 
     public String getAreaCode() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberLocalEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberLocalEndpointConfiguration.java
index a91abea..5e0387d 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberLocalEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberLocalEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class IncomingPhoneNumberLocalEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to purchase in E.164 format")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to purchase in E.164 format")})
     private com.twilio.type.PhoneNumber phoneNumber;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberMobileEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberMobileEndpointConfiguration.java
index cffc5a5..3e1aaba 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberMobileEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberMobileEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class IncomingPhoneNumberMobileEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to purchase in E.164 format")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to purchase in E.164 format")})
     private com.twilio.type.PhoneNumber phoneNumber;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberTollFreeEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberTollFreeEndpointConfiguration.java
index 73f5b7e..bc9dc6f 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberTollFreeEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/IncomingPhoneNumberTollFreeEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class IncomingPhoneNumberTollFreeEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to purchase in E.164 format")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to purchase in E.164 format")})
     private com.twilio.type.PhoneNumber phoneNumber;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/KeyEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/KeyEndpointConfiguration.java
index fdf4955..aac78e5 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/KeyEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/KeyEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class KeyEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resources to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resources to update")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageEndpointConfiguration.java
index aca25c8..464afe9 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageEndpointConfiguration.java
@@ -20,25 +20,25 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class MessageEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The text of the message you want to send. Can be up to 1,600 characters in length."), @ApiMethod(methodName = "updater", description="The text of the message you want to send")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The text of the message you want to send. Can be up to 1,600 characters in length."), @ApiMethod(methodName = "updater", description="The text of the message you want to send")})
     private String body;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The phone number that initiated the message")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The phone number that initiated the message")})
     private com.twilio.type.PhoneNumber from;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The URL of the media to send with the message")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The URL of the media to send with the message")})
     private java.util.List<java.net.URI> mediaUrl;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Messaging Service you want to associate with the message")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Messaging Service you want to associate with the message")})
     private String messagingServiceSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(met [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The destination phone number")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The destination phone number")})
     private com.twilio.type.PhoneNumber to;
 
     public String getBody() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageFeedbackEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageFeedbackEndpointConfiguration.java
index a5ca291..b2ee92f 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageFeedbackEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageFeedbackEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class MessageFeedbackEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Message resource for which the feedback was provided"), @ApiMethod(methodName = "creator", description="The SID of the Message resource for which the feedback was provided")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Message resource for which the feedback was provided"), @ApiMethod(methodName = "creator", description="The SID of the Message resource for which the feedback was provided")})
     private String pathMessageSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageMediaEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageMediaEndpointConfiguration.java
index 3d3964a..c7ecfe4 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageMediaEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/MessageMediaEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class MessageMediaEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resource(s) to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resource(s) to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Message resource that this Media resource belongs to"), @ApiMethod(methodName = "deleter", description="The SID of the Message resource that this Media resource belongs to"), @ApiMethod(methodName = "fetcher", description="The SID of the Message resource that this Media resource belongs to"), @ApiMethod(methodName = "fetcher", description="The SID of the Message resource that this Media resource be [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Message resource that this Media resource belongs to"), @ApiMethod(methodName = "deleter", description="The SID of the Message resource that this Media resource belongs to"), @ApiMethod(methodName = "fetcher", description="The SID of the Message resource that this Media resource belongs to"), @ApiMethod(methodName = "fetcher", description="The SID of the Message resource that this [...]
     private String pathMessageSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies this resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies this resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies this resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies this resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NewKeyEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NewKeyEndpointConfiguration.java
index a82d83c..ca51f9f 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NewKeyEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NewKeyEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class NewKeyEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will be responsible for the new Key resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will be responsible for the new Key resource")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NewSigningKeyEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NewSigningKeyEndpointConfiguration.java
index 58d4e1c..44ea41f 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NewSigningKeyEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NewSigningKeyEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class NewSigningKeyEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will be responsible for the new Key resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will be responsible for the new Key resource")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NotificationEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NotificationEndpointConfiguration.java
index 4b46fe9..a88b6ba 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NotificationEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/NotificationEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class NotificationEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/OutgoingCallerIdEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/OutgoingCallerIdEndpointConfiguration.java
index 5c21b6e..70fe860 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/OutgoingCallerIdEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/OutgoingCallerIdEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class OutgoingCallerIdEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resources to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resources to update")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/QueueEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/QueueEndpointConfiguration.java
index 4c121fd..baf4611 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/QueueEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/QueueEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class QueueEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="A string to describe this resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="A string to describe this resource")})
     private String friendlyName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resource(s) to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName =  [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resource(s) to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to fetch"), @ApiMe [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies this resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies this resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies this resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies this resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies this resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies this resource")})
     private String pathSid;
 
     public String getFriendlyName() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/QueueMemberEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/QueueMemberEndpointConfiguration.java
index 4717225..d013b40 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/QueueMemberEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/QueueMemberEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class QueueMemberEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resource(s) to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resource(s) to update")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The Call SID of the resource(s) to fetch"), @ApiMethod(methodName = "updater", description="The Call SID of the resource(s) to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The Call SID of the resource(s) to fetch"), @ApiMethod(methodName = "updater", description="The Call SID of the resource(s) to update")})
     private String pathCallSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Queue in which to find the members"), @ApiMethod(methodName = "fetcher", description="The SID of the Queue in which to find the members"), @ApiMethod(methodName = "reader", description="The SID of the Queue in which to find the members"), @ApiMethod(methodName = "reader", description="The SID of the Queue in which to find the members"), @ApiMethod(methodName = "updater", description="The SID of the [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Queue in which to find the members"), @ApiMethod(methodName = "fetcher", description="The SID of the Queue in which to find the members"), @ApiMethod(methodName = "reader", description="The SID of the Queue in which to find the members"), @ApiMethod(methodName = "reader", description="The SID of the Queue in which to find the members"), @ApiMethod(methodName = "updater", descripti [...]
     private String pathQueueSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updater", description="The absolute URL of the Queue resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updater", description="The absolute URL of the Queue resource")})
     private java.net.URI url;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingAddOnResultEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingAddOnResultEndpointConfiguration.java
index dde0626..4c761d1 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingAddOnResultEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingAddOnResultEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class RecordingAddOnResultEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the recording to which the result to delete belongs"), @ApiMethod(methodName = "deleter", description="The SID of the recording to which the result to delete belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the recording to which the result to fetch belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the recording to which the result to delete belongs"), @ApiMetho [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the recording to which the result to delete belongs"), @ApiMethod(methodName = "deleter", description="The SID of the recording to which the result to delete belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the recording to which the result to fetch belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the recording to which the result to delete be [...]
     private String pathReferenceSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource to fetch")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource to fetch")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingAddOnResultPayloadEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingAddOnResultPayloadEndpointConfiguration.java
index fcd1526..bc6a44d 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingAddOnResultPayloadEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingAddOnResultPayloadEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class RecordingAddOnResultPayloadEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the AddOnResult to which the payloads to delete belongs"), @ApiMethod(methodName = "deleter", description="The SID of the AddOnResult to which the payloads to delete belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the AddOnResult to which the payload to fetch belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the AddOnResult to which the payloads to delete belon [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the AddOnResult to which the payloads to delete belongs"), @ApiMethod(methodName = "deleter", description="The SID of the AddOnResult to which the payloads to delete belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the AddOnResult to which the payload to fetch belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the AddOnResult to which the payloa [...]
     private String pathAddOnResultSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs"), @ApiMethod(methodName = "deleter", description="The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the recording to which the AddOnResult resource that contains the payload to fetch belongs"), @ [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs"), @ApiMethod(methodName = "deleter", description="The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs"), @ApiMethod(methodName = "fetcher", description="The SID of the recording to which the AddOnResult resource that contains the payload to  [...]
     private String pathReferenceSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource to fetch")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource to fetch")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingEndpointConfiguration.java
index 709605b..622ae5f 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class RecordingEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingTranscriptionEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingTranscriptionEndpointConfiguration.java
index df5a7eb..6fa830a 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingTranscriptionEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/RecordingTranscriptionEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class RecordingTranscriptionEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the recording that created the transcription to delete"), @ApiMethod(methodName = "deleter", description="The SID of the recording that created the transcription to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the recording that created the transcriptions to fetch"), @ApiMethod(methodName = "fetcher", description="The SID of the recording that created the transcription to delete [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the recording that created the transcription to delete"), @ApiMethod(methodName = "deleter", description="The SID of the recording that created the transcription to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the recording that created the transcriptions to fetch"), @ApiMethod(methodName = "fetcher", description="The SID of the recording that created the trans [...]
     private String pathRecordingSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ShortCodeEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ShortCodeEndpointConfiguration.java
index 9403b3c..4587819 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ShortCodeEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ShortCodeEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ShortCodeEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resource(s) to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource(s) to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resource(s) to read"), @ApiMethod(methodName = "updater", description="The SID of the Account that created the resource(s) to update")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "fetcher", description="The unique string that identifies this resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies this resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "fetcher", description="The unique string that identifies this resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies this resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SigningKeyEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SigningKeyEndpointConfiguration.java
index 0d93cd06..2957af0 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SigningKeyEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SigningKeyEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SigningKeyEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The account_sid"), @ApiMethod(methodName = "fetcher", description="The account_sid"), @ApiMethod(methodName = "reader", description="The account_sid"), @ApiMethod(methodName = "updater", description="The account_sid")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The account_sid"), @ApiMethod(methodName = "fetcher", description="The account_sid"), @ApiMethod(methodName = "reader", description="The account_sid"), @ApiMethod(methodName = "updater", description="The account_sid")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The sid"), @ApiMethod(methodName = "fetcher", description="The sid"), @ApiMethod(methodName = "updater", description="The sid")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The sid"), @ApiMethod(methodName = "fetcher", description="The sid"), @ApiMethod(methodName = "updater", description="The sid")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipCredentialEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipCredentialEndpointConfiguration.java
index 78db742..fcc8849 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipCredentialEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipCredentialEndpointConfiguration.java
@@ -20,19 +20,19 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SipCredentialEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The password will not be returned in the response")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The password will not be returned in the response")})
     private String password;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "deleter", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "fetcher", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "reader", description="The unique id of the Account that is responsible for this resou [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "deleter", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "fetcher", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "reader", description="The unique id of the Account that is responsi [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique id that identifies the credential list to include the created credential"), @ApiMethod(methodName = "creator", description="The unique id that identifies the credential list to include the created credential"), @ApiMethod(methodName = "deleter", description="The unique id that identifies the credential list that contains the desired credentials"), @ApiMethod(methodName = "deleter", description="The uni [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique id that identifies the credential list to include the created credential"), @ApiMethod(methodName = "creator", description="The unique id that identifies the credential list to include the created credential"), @ApiMethod(methodName = "deleter", description="The unique id that identifies the credential list that contains the desired credentials"), @ApiMethod(methodName = "deleter", de [...]
     private String pathCredentialListSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique id that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="The unique id that identifies the resource to fetch"), @ApiMethod(methodName = "updater", description="The unique id that identifies the resource to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique id that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="The unique id that identifies the resource to fetch"), @ApiMethod(methodName = "updater", description="The unique id that identifies the resource to update")})
     private String pathSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The username for this credential")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The username for this credential")})
     private String username;
 
     public String getPassword() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipCredentialListEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipCredentialListEndpointConfiguration.java
index 0bdb98f..e3eabb6 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipCredentialListEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipCredentialListEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SipCredentialListEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="Human readable descriptive text"), @ApiMethod(methodName = "updater", description="Human readable descriptive text")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="Human readable descriptive text"), @ApiMethod(methodName = "updater", description="Human readable descriptive text")})
     private String friendlyName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "deleter", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "fetcher", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "reader", description="The unique id of the Account that is responsible for this resou [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "deleter", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "fetcher", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "reader", description="The unique id of the Account that is responsi [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="Delete by unique credential list Sid"), @ApiMethod(methodName = "fetcher", description="Fetch by unique credential list Sid"), @ApiMethod(methodName = "updater", description="Update by unique credential list Sid")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="Delete by unique credential list Sid"), @ApiMethod(methodName = "fetcher", description="Fetch by unique credential list Sid"), @ApiMethod(methodName = "updater", description="Update by unique credential list Sid")})
     private String pathSid;
 
     public String getFriendlyName() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainCredentialListMappingEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainCredentialListMappingEndpointConfiguration.java
index 02ee67b..23acbe6 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainCredentialListMappingEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainCredentialListMappingEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SipDomainCredentialListMappingEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="A string that identifies the CredentialList resource to map to the SIP domain")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="A string that identifies the CredentialList resource to map to the SIP domain")})
     private String credentialListSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "deleter", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account"), @ApiMethod(methodName = "reader", description="The unique sid that identifies this account")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "deleter", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account"), @ApiMethod(methodName = "reader", description="The unique sid that identifies this account")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="A string that identifies the SIP Domain for which the CredentialList resource will be mapped"), @ApiMethod(methodName = "creator", description="A string that identifies the SIP Domain for which the CredentialList resource will be mapped"), @ApiMethod(methodName = "deleter", description="A string that identifies the SIP Domain that includes the resource to delete"), @ApiMethod(methodName = "deleter", description=" [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="A string that identifies the SIP Domain for which the CredentialList resource will be mapped"), @ApiMethod(methodName = "creator", description="A string that identifies the SIP Domain for which the CredentialList resource will be mapped"), @ApiMethod(methodName = "deleter", description="A string that identifies the SIP Domain that includes the resource to delete"), @ApiMethod(methodName = "delet [...]
     private String pathDomainSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="A string that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="A string that identifies the resource to fetch")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="A string that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="A string that identifies the resource to fetch")})
     private String pathSid;
 
     public String getCredentialListSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainEndpointConfiguration.java
index 508b1b4..ae37ce5 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SipDomainEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique address on Twilio to route SIP traffic")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique address on Twilio to route SIP traffic")})
     private String domainName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(met [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getDomainName() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainIpAccessControlListMappingEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainIpAccessControlListMappingEndpointConfiguration.java
index dd0ce03..6734ac7 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainIpAccessControlListMappingEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipDomainIpAccessControlListMappingEndpointConfiguration.java
@@ -20,16 +20,16 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SipDomainIpAccessControlListMappingEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique id of the IP access control list to map to the SIP domain")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique id of the IP access control list to map to the SIP domain")})
     private String ipAccessControlListSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "deleter", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "fetcher", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "reader", description="The unique id of the Account that is responsible for this resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "deleter", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "fetcher", description="The unique id of the Account that is responsible for this resource"), @ApiMethod(methodName = "reader", description="The unique id of the Account that is responsi [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="A string that uniquely identifies the SIP Domain"), @ApiMethod(methodName = "creator", description="A string that uniquely identifies the SIP Domain"), @ApiMethod(methodName = "deleter", description="A string that uniquely identifies the SIP Domain"), @ApiMethod(methodName = "deleter", description="A string that uniquely identifies the SIP Domain"), @ApiMethod(methodName = "fetcher", description="A string that un [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="A string that uniquely identifies the SIP Domain"), @ApiMethod(methodName = "creator", description="A string that uniquely identifies the SIP Domain"), @ApiMethod(methodName = "deleter", description="A string that uniquely identifies the SIP Domain"), @ApiMethod(methodName = "deleter", description="A string that uniquely identifies the SIP Domain"), @ApiMethod(methodName = "fetcher", description [...]
     private String pathDomainSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="A 34 character string that uniquely identifies the resource to delete."), @ApiMethod(methodName = "fetcher", description="A 34 character string that uniquely identifies the resource to fetch.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="A 34 character string that uniquely identifies the resource to delete."), @ApiMethod(methodName = "fetcher", description="A 34 character string that uniquely identifies the resource to fetch.")})
     private String pathSid;
 
     public String getIpAccessControlListSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipIpAccessControlListEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipIpAccessControlListEndpointConfiguration.java
index 46b64c0..5a7e7e9 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipIpAccessControlListEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipIpAccessControlListEndpointConfiguration.java
@@ -20,13 +20,13 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SipIpAccessControlListEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="A human readable description of this resource"), @ApiMethod(methodName = "updater", description="A human readable description of this resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="A human readable description of this resource"), @ApiMethod(methodName = "updater", description="A human readable description of this resource")})
     private String friendlyName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "deleter", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account"), @ApiMethod(methodName = "reader", description="The unique sid that identifies this account"), @ApiMethod(methodName = "updater", description="The unique sid that identifies this a [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "deleter", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account"), @ApiMethod(methodName = "reader", description="The unique sid that identifies this account"), @ApiMethod(methodName = "updater", description="The unique sid that [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="A string that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="A string that identifies the resource to fetch"), @ApiMethod(methodName = "updater", description="A string that identifies the resource to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="A string that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="A string that identifies the resource to fetch"), @ApiMethod(methodName = "updater", description="A string that identifies the resource to update")})
     private String pathSid;
 
     public String getFriendlyName() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipIpAccessControlListIpAddressEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipIpAccessControlListIpAddressEndpointConfiguration.java
index 0cfe933..c61be71 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipIpAccessControlListIpAddressEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/SipIpAccessControlListIpAddressEndpointConfiguration.java
@@ -20,19 +20,19 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class SipIpAccessControlListIpAddressEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="A human readable descriptive text for this resource, up to 64 characters long.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="A human readable descriptive text for this resource, up to 64 characters long.")})
     private String friendlyName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="An IP address in dotted decimal notation from which you want to accept traffic. Any SIP requests from this IP address will be allowed by Twilio. IPv4 only supported today.")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="An IP address in dotted decimal notation from which you want to accept traffic. Any SIP requests from this IP address will be allowed by Twilio. IPv4 only supported today.")})
     private String ipAddress;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "deleter", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account"), @ApiMethod(methodName = "reader", description="The unique sid that identifies this account"), @ApiMethod(methodName = "updater", description="The unique sid that identifies this a [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The unique sid that identifies this account"), @ApiMethod(methodName = "deleter", description="The unique sid that identifies this account"), @ApiMethod(methodName = "fetcher", description="The unique sid that identifies this account"), @ApiMethod(methodName = "reader", description="The unique sid that identifies this account"), @ApiMethod(methodName = "updater", description="The unique sid that [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The IpAccessControlList Sid with which to associate the created IpAddress resource"), @ApiMethod(methodName = "creator", description="The IpAccessControlList Sid with which to associate the created IpAddress resource"), @ApiMethod(methodName = "deleter", description="The IpAccessControlList Sid that identifies the IpAddress resources to delete"), @ApiMethod(methodName = "deleter", description="The IpAccessControl [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The IpAccessControlList Sid with which to associate the created IpAddress resource"), @ApiMethod(methodName = "creator", description="The IpAccessControlList Sid with which to associate the created IpAddress resource"), @ApiMethod(methodName = "deleter", description="The IpAccessControlList Sid that identifies the IpAddress resources to delete"), @ApiMethod(methodName = "deleter", description="T [...]
     private String pathIpAccessControlListSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="A string that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="A string that identifies the IpAddress resource to fetch"), @ApiMethod(methodName = "updater", description="A string that identifies the IpAddress resource to update")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="A string that identifies the resource to delete"), @ApiMethod(methodName = "fetcher", description="A string that identifies the IpAddress resource to fetch"), @ApiMethod(methodName = "updater", description="A string that identifies the IpAddress resource to update")})
     private String pathSid;
 
     public String getFriendlyName() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TokenEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TokenEndpointConfiguration.java
index 58ce2cf..5b487b8 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TokenEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TokenEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class TokenEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TranscriptionEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TranscriptionEndpointConfiguration.java
index 7d96b8c..8c20049 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TranscriptionEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/TranscriptionEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class TranscriptionEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource")})
     private String pathSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordAllTimeEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordAllTimeEndpointConfiguration.java
index 0ba3d71..e0ee534 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordAllTimeEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordAllTimeEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordAllTimeEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordDailyEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordDailyEndpointConfiguration.java
index 2360589..8325ef2 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordDailyEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordDailyEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordDailyEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordEndpointConfiguration.java
index bd4282f..b54840b 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordLastMonthEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordLastMonthEndpointConfiguration.java
index 188e593..0a0ac82 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordLastMonthEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordLastMonthEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordLastMonthEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordMonthlyEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordMonthlyEndpointConfiguration.java
index 2af32c4..8dae402 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordMonthlyEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordMonthlyEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordMonthlyEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordThisMonthEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordThisMonthEndpointConfiguration.java
index 8109a2b..fe9096e 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordThisMonthEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordThisMonthEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordThisMonthEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordTodayEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordTodayEndpointConfiguration.java
index 3aea2ac..c6b9bab 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordTodayEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordTodayEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordTodayEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordYearlyEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordYearlyEndpointConfiguration.java
index b65df78..06e7c79 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordYearlyEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordYearlyEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordYearlyEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordYesterdayEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordYesterdayEndpointConfiguration.java
index 1ddec2b..03f58b1 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordYesterdayEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageRecordYesterdayEndpointConfiguration.java
@@ -20,7 +20,7 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageRecordYesterdayEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read")})
     private String pathAccountSid;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageTriggerEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageTriggerEndpointConfiguration.java
index 9a11168..50f0b9e 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageTriggerEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/UsageTriggerEndpointConfiguration.java
@@ -20,19 +20,19 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class UsageTriggerEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The URL we call when the trigger fires")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The URL we call when the trigger fires")})
     private java.net.URI callbackUrl;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(methodName = "updater [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account that will create the resource"), @ApiMethod(methodName = "deleter", description="The SID of the Account that created the resources to delete"), @ApiMethod(methodName = "fetcher", description="The SID of the Account that created the resource to fetch"), @ApiMethod(methodName = "reader", description="The SID of the Account that created the resources to read"), @ApiMethod(met [...]
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleter", description="The unique string that identifies the resource"), @ApiMethod(methodName = "fetcher", description="The unique string that identifies the resource"), @ApiMethod(methodName = "updater", description="The unique string that identifies the resource")})
     private String pathSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The usage value at which the trigger should fire")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The usage value at which the trigger should fire")})
     private String triggerValue;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The usage category the trigger watches")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The usage category the trigger watches")})
     private com.twilio.rest.api.v2010.account.usage.Trigger.UsageCategory usageCategory;
 
     public java.net.URI getCallbackUrl() {
diff --git a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ValidationRequestEndpointConfiguration.java b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ValidationRequestEndpointConfiguration.java
index 309fb1e..de6374c 100644
--- a/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ValidationRequestEndpointConfiguration.java
+++ b/components/camel-twilio/src/generated/java/org/apache/camel/component/twilio/ValidationRequestEndpointConfiguration.java
@@ -20,10 +20,10 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ValidationRequestEndpointConfiguration extends TwilioConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account responsible for the new Caller ID")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The SID of the Account responsible for the new Caller ID")})
     private String pathAccountSid;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to verify in E.164 format"), @ApiMethod(methodName = "creator", description="The phone number to verify in E.164 format")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "creator", description="The phone number to verify in E.164 format"), @ApiMethod(methodName = "creator", description="The phone number to verify in E.164 format")})
     private com.twilio.type.PhoneNumber phoneNumber;
 
     public String getPathAccountSid() {
diff --git a/components/camel-twilio/src/generated/resources/org/apache/camel/component/twilio/twilio.json b/components/camel-twilio/src/generated/resources/org/apache/camel/component/twilio/twilio.json
index 07c6b76..41167d9 100644
--- a/components/camel-twilio/src/generated/resources/org/apache/camel/component/twilio/twilio.json
+++ b/components/camel-twilio/src/generated/resources/org/apache/camel/component/twilio/twilio.json
@@ -118,61 +118,61 @@
     "sip-credential-list": { "aliases": [ "^creator$=create", "^deleter$=delete", "^fetcher$=fetch", "^reader$=read", "^updater$=update" ], "methods": { "creator": { "description": "Create a CredentialListCreator to execute create", "signatures": [ "com.twilio.rest.api.v2010.account.sip.CredentialListCreator creator(String friendlyName)", "com.twilio.rest.api.v2010.account.sip.CredentialListCreator creator(String pathAccountSid, String friendlyName)" ] }, "deleter": { "description": "Cre [...]
   },
   "apiProperties": {
-    "recording-add-on-result-payload": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete" }, "pathAddOnResultSid": { "kind": "parameter", "displayName": "Path Add On Result Sid", "group": "common", "label":  [...]
-    "usage-record-today": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "available-phone-number-country-local": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account requesting the AvailablePhoneNumber resources" }, "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "group": "common", "lab [...]
-    "call-recording": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource" }, "pathCallSid": { "kind": "parameter", "displayName": "Path Call Sid", "group": "common", "label": "", "required": false, "type": "string", [...]
-    "queue-member": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource(s) to fetch" }, "pathCallSid": { "kind": "parameter", "displayName": "Path Call Sid", "group": "common", "label": "", "required": false, "type": "st [...]
-    "usage-trigger": { "methods": { "creator": { "properties": { "callbackUrl": { "kind": "parameter", "displayName": "Callback Url", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.net.URI", "deprecated": false, "secret": false, "description": "The URL we call when the trigger fires" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.l [...]
-    "usage-record-last-month": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "usage-record-all-time": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "recording-transcription": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete" }, "pathRecordingSid": { "kind": "parameter", "displayName": "Path Recording Sid", "group": "common", "label": "", "required" [...]
-    "message": { "methods": { "creator": { "properties": { "body": { "kind": "parameter", "displayName": "Body", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The text of the message you want to send. Can be up to 1,600 characters in length." }, "from": { "kind": "parameter", "displayName": "From", "group": "common", "label": "", "required": false, "type": "object", "javaType": "c [...]
-    "call-feedback-summary": { "methods": { "creator": { "properties": { "endDate": { "kind": "parameter", "displayName": "End Date", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.joda.time.LocalDate", "deprecated": false, "secret": false, "description": "Only include feedback given on or before this date" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "strin [...]
-    "sip-credential-list-credential": { "methods": { "creator": { "properties": { "password": { "kind": "parameter", "displayName": "Password", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The password will not be returned in the response" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "str [...]
-    "new-key": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will be responsible for the new Key resource" } } } } },
-    "incoming-phone-number": { "methods": { "creator": { "properties": { "areaCode": { "kind": "parameter", "displayName": "Area Code", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The desired area code for the new phone number" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "java [...]
-    "call-notification": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource to fetch" }, "pathCallSid": { "kind": "parameter", "displayName": "Path Call Sid", "group": "common", "label": "", "required": false, "type": " [...]
-    "validation-request": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account responsible for the new Caller ID" }, "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, "type": "o [...]
-    "usage-record-yesterday": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "usage-record-this-month": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "new-signing-key": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will be responsible for the new Key resource" } } } } },
-    "conference": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource(s) to fetch" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "jav [...]
-    "usage-record-daily": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "application": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource" } } }, "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "",  [...]
-    "usage-record": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "available-phone-number-country-mobile": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account requesting the AvailablePhoneNumber resources" }, "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "group": "common", "la [...]
-    "conference-participant": { "methods": { "creator": { "properties": { "from": { "kind": "parameter", "displayName": "From", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "The phone number, Client identifier, or username portion of SIP address that made this call." }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label [...]
-    "recording-add-on-result": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete" }, "pathReferenceSid": { "kind": "parameter", "displayName": "Path Reference Sid", "group": "common", "label": "", "required" [...]
-    "notification": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource to fetch" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "java [...]
-    "sip-domain-ip-access-control-list-mapping": { "methods": { "creator": { "properties": { "ipAccessControlListSid": { "kind": "parameter", "displayName": "Ip Access Control List Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The unique id of the IP access control list to map to the SIP domain" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", " [...]
-    "sip-domain": { "methods": { "creator": { "properties": { "domainName": { "kind": "parameter", "displayName": "Domain Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The unique address on Twilio to route SIP traffic" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType [...]
-    "address": { "methods": { "creator": { "properties": { "city": { "kind": "parameter", "displayName": "City", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The city of the new address" }, "customerName": { "kind": "parameter", "displayName": "Customer Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, [...]
-    "message-media": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource(s) to delete" }, "pathMessageSid": { "kind": "parameter", "displayName": "Path Message Sid", "group": "common", "label": "", "required": false, "ty [...]
-    "sip-ip-access-control-list-ip-address": { "methods": { "creator": { "properties": { "friendlyName": { "kind": "parameter", "displayName": "Friendly Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "A human readable descriptive text for this resource, up to 64 characters long." }, "ipAddress": { "kind": "parameter", "displayName": "Ip Address", "group": "common", "label": " [...]
-    "available-phone-number-country": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account requesting the available phone number Country resource" }, "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "group": "common",  [...]
-    "usage-record-yearly": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "queue": { "methods": { "creator": { "properties": { "friendlyName": { "kind": "parameter", "displayName": "Friendly Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "A string to describe this resource" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.St [...]
-    "transcription": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "j [...]
-    "sip-domain-credential-list-mapping": { "methods": { "creator": { "properties": { "credentialListSid": { "kind": "parameter", "displayName": "Credential List Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "A string that identifies the CredentialList resource to map to the SIP domain" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "c [...]
-    "call-feedback": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The unique sid that identifies this account" }, "pathCallSid": { "kind": "parameter", "displayName": "Path Call Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType [...]
-    "key": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType":  [...]
-    "incoming-phone-number-toll-free": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource" }, "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, " [...]
-    "token": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource" } } } } },
-    "short-code": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource(s) to fetch" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "jav [...]
-    "available-phone-number-country-toll-free": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account requesting the AvailablePhoneNumber resources" }, "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "group": "common",  [...]
-    "usage-record-monthly": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" } } } } },
-    "sip-ip-access-control-list": { "methods": { "creator": { "properties": { "friendlyName": { "kind": "parameter", "displayName": "Friendly Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "A human readable description of this resource" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "st [...]
-    "connect-app": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource to fetch" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaT [...]
-    "address-dependent-phone-number": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read" }, "pathAddressSid": { "kind": "parameter", "displayName": "Path Address Sid", "group": "common", "label": "", "required" [...]
-    "signing-key": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The account_sid" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": fa [...]
-    "outgoing-caller-id": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string [...]
-    "call": { "methods": { "creator": { "properties": { "applicationSid": { "kind": "parameter", "displayName": "Application Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Application resource that will handle the call" }, "from": { "kind": "parameter", "displayName": "From", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com. [...]
-    "incoming-phone-number-local": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource" }, "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, "type [...]
-    "message-feedback": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource" }, "pathMessageSid": { "kind": "parameter", "displayName": "Path Message Sid", "group": "common", "label": "", "required": false, "type": " [...]
-    "recording": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaT [...]
-    "incoming-phone-number-mobile": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource" }, "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, "typ [...]
-    "account": { "methods": { "fetcher": { "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Fetch by unique Account Sid" } } }, "updater": { "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang [...]
-    "sip-credential-list": { "methods": { "creator": { "properties": { "friendlyName": { "kind": "parameter", "displayName": "Friendly Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Human readable descriptive text" }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "j [...]
+    "recording-add-on-result-payload": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete", "optional": false }, "pathAddOnResultSid": { "kind": "parameter", "displayName": "Path Add On Result Sid", "group":  [...]
+    "usage-record-today": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "available-phone-number-country-local": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account requesting the AvailablePhoneNumber resources", "optional": false }, "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "gro [...]
+    "call-recording": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource", "optional": false }, "pathCallSid": { "kind": "parameter", "displayName": "Path Call Sid", "group": "common", "label": "", "required": false [...]
+    "queue-member": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource(s) to fetch", "optional": false }, "pathCallSid": { "kind": "parameter", "displayName": "Path Call Sid", "group": "common", "label": "", "required": [...]
+    "usage-trigger": { "methods": { "creator": { "properties": { "callbackUrl": { "kind": "parameter", "displayName": "Callback Url", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.net.URI", "deprecated": false, "secret": false, "description": "The URL we call when the trigger fires", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string",  [...]
+    "usage-record-last-month": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "usage-record-all-time": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "recording-transcription": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete", "optional": false }, "pathRecordingSid": { "kind": "parameter", "displayName": "Path Recording Sid", "group": "common", "lab [...]
+    "message": { "methods": { "creator": { "properties": { "body": { "kind": "parameter", "displayName": "Body", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The text of the message you want to send. Can be up to 1,600 characters in length.", "optional": false }, "from": { "kind": "parameter", "displayName": "From", "group": "common", "label": "", "required": false, "type": "obje [...]
+    "call-feedback-summary": { "methods": { "creator": { "properties": { "endDate": { "kind": "parameter", "displayName": "End Date", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.joda.time.LocalDate", "deprecated": false, "secret": false, "description": "Only include feedback given on or before this date", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": fa [...]
+    "sip-credential-list-credential": { "methods": { "creator": { "properties": { "password": { "kind": "parameter", "displayName": "Password", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The password will not be returned in the response", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required":  [...]
+    "new-key": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will be responsible for the new Key resource", "optional": false } } } } },
+    "incoming-phone-number": { "methods": { "creator": { "properties": { "areaCode": { "kind": "parameter", "displayName": "Area Code", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The desired area code for the new phone number", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "typ [...]
+    "call-notification": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource to fetch", "optional": false }, "pathCallSid": { "kind": "parameter", "displayName": "Path Call Sid", "group": "common", "label": "", "required [...]
+    "validation-request": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account responsible for the new Caller ID", "optional": false }, "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required" [...]
+    "usage-record-yesterday": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "usage-record-this-month": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "new-signing-key": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will be responsible for the new Key resource", "optional": false } } } } },
+    "conference": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource(s) to fetch", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "ty [...]
+    "usage-record-daily": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "application": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource", "optional": false } } }, "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "com [...]
+    "usage-record": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "available-phone-number-country-mobile": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account requesting the AvailablePhoneNumber resources", "optional": false }, "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "gr [...]
+    "conference-participant": { "methods": { "creator": { "properties": { "from": { "kind": "parameter", "displayName": "From", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "The phone number, Client identifier, or username portion of SIP address that made this call.", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group [...]
+    "recording-add-on-result": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete", "optional": false }, "pathReferenceSid": { "kind": "parameter", "displayName": "Path Reference Sid", "group": "common", "lab [...]
+    "notification": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource to fetch", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "typ [...]
+    "sip-domain-ip-access-control-list-mapping": { "methods": { "creator": { "properties": { "ipAccessControlListSid": { "kind": "parameter", "displayName": "Ip Access Control List Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The unique id of the IP access control list to map to the SIP domain", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "P [...]
+    "sip-domain": { "methods": { "creator": { "properties": { "domainName": { "kind": "parameter", "displayName": "Domain Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The unique address on Twilio to route SIP traffic", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type":  [...]
+    "address": { "methods": { "creator": { "properties": { "city": { "kind": "parameter", "displayName": "City", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The city of the new address", "optional": false }, "customerName": { "kind": "parameter", "displayName": "Customer Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", " [...]
+    "message-media": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource(s) to delete", "optional": false }, "pathMessageSid": { "kind": "parameter", "displayName": "Path Message Sid", "group": "common", "label": "", "re [...]
+    "sip-ip-access-control-list-ip-address": { "methods": { "creator": { "properties": { "friendlyName": { "kind": "parameter", "displayName": "Friendly Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "A human readable descriptive text for this resource, up to 64 characters long.", "optional": false }, "ipAddress": { "kind": "parameter", "displayName": "Ip Address", "group": " [...]
+    "available-phone-number-country": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account requesting the available phone number Country resource", "optional": false }, "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code",  [...]
+    "usage-record-yearly": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "queue": { "methods": { "creator": { "properties": { "friendlyName": { "kind": "parameter", "displayName": "Friendly Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "A string to describe this resource", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaT [...]
+    "transcription": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, " [...]
+    "sip-domain-credential-list-mapping": { "methods": { "creator": { "properties": { "credentialListSid": { "kind": "parameter", "displayName": "Credential List Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "A string that identifies the CredentialList resource to map to the SIP domain", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Accoun [...]
+    "call-feedback": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The unique sid that identifies this account", "optional": false }, "pathCallSid": { "kind": "parameter", "displayName": "Path Call Sid", "group": "common", "label": "", "required": false, "type":  [...]
+    "key": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "st [...]
+    "incoming-phone-number-toll-free": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource", "optional": false }, "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", " [...]
+    "token": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource", "optional": false } } } } },
+    "short-code": { "methods": { "fetcher": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource(s) to fetch", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "ty [...]
+    "available-phone-number-country-toll-free": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account requesting the AvailablePhoneNumber resources", "optional": false }, "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code",  [...]
+    "usage-record-monthly": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false } } } } },
+    "sip-ip-access-control-list": { "methods": { "creator": { "properties": { "friendlyName": { "kind": "parameter", "displayName": "Friendly Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "A human readable description of this resource", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": [...]
+    "connect-app": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resource to fetch", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type [...]
+    "address-dependent-phone-number": { "methods": { "reader": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to read", "optional": false }, "pathAddressSid": { "kind": "parameter", "displayName": "Path Address Sid", "group": "common", "lab [...]
+    "signing-key": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The account_sid", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String [...]
+    "outgoing-caller-id": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": fal [...]
+    "call": { "methods": { "creator": { "properties": { "applicationSid": { "kind": "parameter", "displayName": "Application Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Application resource that will handle the call", "optional": false }, "from": { "kind": "parameter", "displayName": "From", "group": "common", "label": "", "required": false, "type": "object" [...]
+    "incoming-phone-number-local": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource", "optional": false }, "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "requ [...]
+    "message-feedback": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource", "optional": false }, "pathMessageSid": { "kind": "parameter", "displayName": "Path Message Sid", "group": "common", "label": "", "required [...]
+    "recording": { "methods": { "deleter": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that created the resources to delete", "optional": false }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type [...]
+    "incoming-phone-number-mobile": { "methods": { "creator": { "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The SID of the Account that will create the resource", "optional": false }, "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "req [...]
+    "account": { "methods": { "fetcher": { "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Fetch by unique Account Sid", "optional": false } } }, "updater": { "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "ja [...]
+    "sip-credential-list": { "methods": { "creator": { "properties": { "friendlyName": { "kind": "parameter", "displayName": "Friendly Name", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "Human readable descriptive text", "optional": false }, "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "stri [...]
   }
 }
diff --git a/components/camel-twilio/src/main/docs/twilio-component.adoc b/components/camel-twilio/src/main/docs/twilio-component.adoc
index b4e5f7c..56d1a76 100644
--- a/components/camel-twilio/src/main/docs/twilio-component.adoc
+++ b/components/camel-twilio/src/main/docs/twilio-component.adoc
@@ -158,24 +158,22 @@ The recording-add-on-result-payload API method(s) has the following set of param
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathAddOnResultSid* | The SID of the AddOnResult to which the payloads to delete belongs | String
-| deleter | *pathReferenceSid* | The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathAddOnResultSid* | The SID of the AddOnResult to which the payloads to delete belongs | String
-| fetcher | *pathReferenceSid* | The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs | String
-| fetcher | *pathSid* | The unique string that identifies the resource to fetch | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| reader | *pathAddOnResultSid* | The SID of the AddOnResult to which the payloads to delete belongs | String
-| reader | *pathReferenceSid* | The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathAddOnResultSid* |  The SID of the AddOnResult to which the payloads to delete belongs | String
+| deleter | *pathReferenceSid* |  The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathAddOnResultSid* |  The SID of the AddOnResult to which the payloads to delete belongs | String
+| fetcher | *pathReferenceSid* |  The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs | String
+| fetcher | *pathSid* |  The unique string that identifies the resource to fetch | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| reader | *pathAddOnResultSid* |  The SID of the AddOnResult to which the payloads to delete belongs | String
+| reader | *pathReferenceSid* |  The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs | String
 |===
 
 In addition to the parameters above, the recording-add-on-result-payload API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -217,14 +215,12 @@ The usage-record-today API method(s) has the following set of parameters listed
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record-today API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -266,15 +262,13 @@ The available-phone-number-country-local API method(s) has the following set of
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account requesting the AvailablePhoneNumber resources | String
-| reader | *pathCountryCode* | The ISO Country code of the country from which to read phone numbers | String
+| reader | *pathAccountSid* |  The SID of the Account requesting the AvailablePhoneNumber resources | String
+| reader | *pathCountryCode* |  The ISO Country code of the country from which to read phone numbers | String
 |===
 
 In addition to the parameters above, the available-phone-number-country-local API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -336,27 +330,25 @@ The call-recording API method(s) has the following set of parameters listed in t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *pathCallSid* | The SID of the Call to associate the resource with | String
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathCallSid* | The SID of the Call to associate the resource with | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathCallSid* | The SID of the Call to associate the resource with | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| reader | *pathCallSid* | The SID of the Call to associate the resource with | String
-| updater | *pathAccountSid* | The SID of the Account that created the resource to update | String
-| updater | *pathCallSid* | The SID of the Call to associate the resource with | String
-| updater | *pathSid* | The unique string that identifies the resource | String
-| updater | *status* | The new status of the recording | Status
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *pathCallSid* |  The SID of the Call to associate the resource with | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathCallSid* |  The SID of the Call to associate the resource with | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathCallSid* |  The SID of the Call to associate the resource with | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| reader | *pathCallSid* |  The SID of the Call to associate the resource with | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resource to update | String
+| updater | *pathCallSid* |  The SID of the Call to associate the resource with | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
+| updater | *status* |  The new status of the recording | Status
 |===
 
 In addition to the parameters above, the call-recording API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -408,22 +400,20 @@ The queue-member API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource(s) to fetch | String
-| fetcher | *pathCallSid* | The Call SID of the resource(s) to fetch | String
-| fetcher | *pathQueueSid* | The SID of the Queue in which to find the members | String
-| reader | *pathAccountSid* | The SID of the Account that created the resource(s) to read | String
-| reader | *pathQueueSid* | The SID of the Queue in which to find the members | String
-| updater | *pathAccountSid* | The SID of the Account that created the resource(s) to update | String
-| updater | *pathCallSid* | The Call SID of the resource(s) to update | String
-| updater | *pathQueueSid* | The SID of the Queue in which to find the members | String
-| updater | *url* | The absolute URL of the Queue resource | URI
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource(s) to fetch | String
+| fetcher | *pathCallSid* |  The Call SID of the resource(s) to fetch | String
+| fetcher | *pathQueueSid* |  The SID of the Queue in which to find the members | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resource(s) to read | String
+| reader | *pathQueueSid* |  The SID of the Queue in which to find the members | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resource(s) to update | String
+| updater | *pathCallSid* |  The Call SID of the resource(s) to update | String
+| updater | *pathQueueSid* |  The SID of the Queue in which to find the members | String
+| updater | *url* |  The absolute URL of the Queue resource | URI
 |===
 
 In addition to the parameters above, the queue-member API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -485,24 +475,22 @@ The usage-trigger API method(s) has the following set of parameters listed in th
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *callbackUrl* | The URL we call when the trigger fires | URI
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *triggerValue* | The usage value at which the trigger should fire | String
-| creator | *usageCategory* | The usage category the trigger watches | UsageCategory
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resources to update | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| creator | *callbackUrl* |  The URL we call when the trigger fires | URI
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *triggerValue* |  The usage value at which the trigger should fire | String
+| creator | *usageCategory* |  The usage category the trigger watches | UsageCategory
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resources to update | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the usage-trigger API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -544,14 +532,12 @@ The usage-record-last-month API method(s) has the following set of parameters li
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record-last-month API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -593,14 +579,12 @@ The usage-record-all-time API method(s) has the following set of parameters list
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record-all-time API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -652,21 +636,19 @@ The recording-transcription API method(s) has the following set of parameters li
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathRecordingSid* | The SID of the recording that created the transcription to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathRecordingSid* | The SID of the recording that created the transcription to delete | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| reader | *pathRecordingSid* | The SID of the recording that created the transcription to delete | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathRecordingSid* |  The SID of the recording that created the transcription to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathRecordingSid* |  The SID of the recording that created the transcription to delete | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| reader | *pathRecordingSid* |  The SID of the recording that created the transcription to delete | String
 |===
 
 In addition to the parameters above, the recording-transcription API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -740,27 +722,25 @@ The message API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *body* | The text of the message you want to send. Can be up to 1,600 characters in length. | String
-| creator | *from* | The phone number that initiated the message | PhoneNumber
-| creator | *mediaUrl* | The URL of the media to send with the message | List
-| creator | *messagingServiceSid* | The SID of the Messaging Service you want to associate with the message | String
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *to* | The destination phone number | PhoneNumber
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| updater | *body* | The text of the message you want to send | String
-| updater | *pathAccountSid* | The SID of the Account that created the resources to update | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| creator | *body* |  The text of the message you want to send. Can be up to 1,600 characters in length. | String
+| creator | *from* |  The phone number that initiated the message | PhoneNumber
+| creator | *mediaUrl* |  The URL of the media to send with the message | List
+| creator | *messagingServiceSid* |  The SID of the Messaging Service you want to associate with the message | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *to* |  The destination phone number | PhoneNumber
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| updater | *body* |  The text of the message you want to send | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resources to update | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the message API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -812,20 +792,18 @@ The call-feedback-summary API method(s) has the following set of parameters list
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *endDate* | Only include feedback given on or before this date | LocalDate
-| creator | *pathAccountSid* | The unique sid that identifies this account | String
-| creator | *startDate* | Only include feedback given on or after this date | LocalDate
-| deleter | *pathAccountSid* | The unique sid that identifies this account | String
-| deleter | *pathSid* | A string that uniquely identifies this feedback summary resource | String
-| fetcher | *pathAccountSid* | The unique sid that identifies this account | String
-| fetcher | *pathSid* | A string that uniquely identifies this feedback summary resource | String
+| creator | *endDate* |  Only include feedback given on or before this date | LocalDate
+| creator | *pathAccountSid* |  The unique sid that identifies this account | String
+| creator | *startDate* |  Only include feedback given on or after this date | LocalDate
+| deleter | *pathAccountSid* |  The unique sid that identifies this account | String
+| deleter | *pathSid* |  A string that uniquely identifies this feedback summary resource | String
+| fetcher | *pathAccountSid* |  The unique sid that identifies this account | String
+| fetcher | *pathSid* |  A string that uniquely identifies this feedback summary resource | String
 |===
 
 In addition to the parameters above, the call-feedback-summary API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -887,28 +865,26 @@ The sip-credential-list-credential API method(s) has the following set of parame
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *password* | The password will not be returned in the response | String
-| creator | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| creator | *pathCredentialListSid* | The unique id that identifies the credential list to include the created credential | String
-| creator | *username* | The username for this credential | String
-| deleter | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| deleter | *pathCredentialListSid* | The unique id that identifies the credential list to include the created credential | String
-| deleter | *pathSid* | The unique id that identifies the resource to delete | String
-| fetcher | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| fetcher | *pathCredentialListSid* | The unique id that identifies the credential list to include the created credential | String
-| fetcher | *pathSid* | The unique id that identifies the resource to fetch | String
-| reader | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| reader | *pathCredentialListSid* | The unique id that identifies the credential list to include the created credential | String
-| updater | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| updater | *pathCredentialListSid* | The unique id that identifies the credential list to include the created credential | String
-| updater | *pathSid* | The unique id that identifies the resource to update | String
+| creator | *password* |  The password will not be returned in the response | String
+| creator | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| creator | *pathCredentialListSid* |  The unique id that identifies the credential list to include the created credential | String
+| creator | *username* |  The username for this credential | String
+| deleter | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| deleter | *pathCredentialListSid* |  The unique id that identifies the credential list to include the created credential | String
+| deleter | *pathSid* |  The unique id that identifies the resource to delete | String
+| fetcher | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| fetcher | *pathCredentialListSid* |  The unique id that identifies the credential list to include the created credential | String
+| fetcher | *pathSid* |  The unique id that identifies the resource to fetch | String
+| reader | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| reader | *pathCredentialListSid* |  The unique id that identifies the credential list to include the created credential | String
+| updater | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| updater | *pathCredentialListSid* |  The unique id that identifies the credential list to include the created credential | String
+| updater | *pathSid* |  The unique id that identifies the resource to update | String
 |===
 
 In addition to the parameters above, the sip-credential-list-credential API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -950,14 +926,12 @@ The new-key API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will be responsible for the new Key resource | String
+| creator | *pathAccountSid* |  The SID of the Account that will be responsible for the new Key resource | String
 |===
 
 In addition to the parameters above, the new-key API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1023,23 +997,21 @@ The incoming-phone-number API method(s) has the following set of parameters list
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *areaCode* | The desired area code for the new phone number | String
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *phoneNumber* | The phone number to purchase in E.164 format | PhoneNumber
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resource to update | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| creator | *areaCode* |  The desired area code for the new phone number | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *phoneNumber* |  The phone number to purchase in E.164 format | PhoneNumber
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resource to update | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the incoming-phone-number API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1086,18 +1058,16 @@ The call-notification API method(s) has the following set of parameters listed i
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathCallSid* | The Call SID of the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| reader | *pathCallSid* | The Call SID of the resource to fetch | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathCallSid* |  The Call SID of the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| reader | *pathCallSid* |  The Call SID of the resource to fetch | String
 |===
 
 In addition to the parameters above, the call-notification API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1139,15 +1109,13 @@ The validation-request API method(s) has the following set of parameters listed
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account responsible for the new Caller ID | String
-| creator | *phoneNumber* | The phone number to verify in E.164 format | PhoneNumber
+| creator | *pathAccountSid* |  The SID of the Account responsible for the new Caller ID | String
+| creator | *phoneNumber* |  The phone number to verify in E.164 format | PhoneNumber
 |===
 
 In addition to the parameters above, the validation-request API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1189,14 +1157,12 @@ The usage-record-yesterday API method(s) has the following set of parameters lis
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record-yesterday API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1238,14 +1204,12 @@ The usage-record-this-month API method(s) has the following set of parameters li
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record-this-month API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1287,14 +1251,12 @@ The new-signing-key API method(s) has the following set of parameters listed in
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will be responsible for the new Key resource | String
+| creator | *pathAccountSid* |  The SID of the Account that will be responsible for the new Key resource | String
 |===
 
 In addition to the parameters above, the new-signing-key API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1346,18 +1308,16 @@ The conference API method(s) has the following set of parameters listed in the t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource(s) to fetch | String
-| fetcher | *pathSid* | The unique string that identifies this resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resource(s) to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resource(s) to update | String
-| updater | *pathSid* | The unique string that identifies this resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource(s) to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies this resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resource(s) to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resource(s) to update | String
+| updater | *pathSid* |  The unique string that identifies this resource | String
 |===
 
 In addition to the parameters above, the conference API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1399,14 +1359,12 @@ The usage-record-daily API method(s) has the following set of parameters listed
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record-daily API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1468,21 +1426,19 @@ The application API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| updater | *pathAccountSid* | The SID of the Account that will create the resource | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| updater | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the application API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1524,14 +1480,12 @@ The usage-record API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1573,15 +1527,13 @@ The available-phone-number-country-mobile API method(s) has the following set of
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account requesting the AvailablePhoneNumber resources | String
-| reader | *pathCountryCode* | The ISO Country code of the country from which to read phone numbers | String
+| reader | *pathAccountSid* |  The SID of the Account requesting the AvailablePhoneNumber resources | String
+| reader | *pathCountryCode* |  The ISO Country code of the country from which to read phone numbers | String
 |===
 
 In addition to the parameters above, the available-phone-number-country-mobile API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1643,28 +1595,26 @@ The conference-participant API method(s) has the following set of parameters lis
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *from* | The phone number, Client identifier, or username portion of SIP address that made this call. | PhoneNumber
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *pathConferenceSid* | The SID of the participant's conference | String
-| creator | *to* | The phone number, SIP address or Client identifier that received this call. | PhoneNumber
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathCallSid* | The Call SID or URL encoded label of the participant to delete | String
-| deleter | *pathConferenceSid* | The SID of the participant's conference | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathCallSid* | The Call SID or URL encoded label of the participant to fetch | String
-| fetcher | *pathConferenceSid* | The SID of the participant's conference | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| reader | *pathConferenceSid* | The SID of the participant's conference | String
-| updater | *pathAccountSid* | The SID of the Account that created the resources to update | String
-| updater | *pathCallSid* | The Call SID or URL encoded label of the participant to update | String
-| updater | *pathConferenceSid* | The SID of the participant's conference | String
+| creator | *from* |  The phone number, Client identifier, or username portion of SIP address that made this call. | PhoneNumber
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *pathConferenceSid* |  The SID of the participant's conference | String
+| creator | *to* |  The phone number, SIP address or Client identifier that received this call. | PhoneNumber
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathCallSid* |  The Call SID or URL encoded label of the participant to delete | String
+| deleter | *pathConferenceSid* |  The SID of the participant's conference | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathCallSid* |  The Call SID or URL encoded label of the participant to fetch | String
+| fetcher | *pathConferenceSid* |  The SID of the participant's conference | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| reader | *pathConferenceSid* |  The SID of the participant's conference | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resources to update | String
+| updater | *pathCallSid* |  The Call SID or URL encoded label of the participant to update | String
+| updater | *pathConferenceSid* |  The SID of the participant's conference | String
 |===
 
 In addition to the parameters above, the conference-participant API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1716,21 +1666,19 @@ The recording-add-on-result API method(s) has the following set of parameters li
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathReferenceSid* | The SID of the recording to which the result to delete belongs | String
-| deleter | *pathSid* | The unique string that identifies the resource to delete | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathReferenceSid* | The SID of the recording to which the result to delete belongs | String
-| fetcher | *pathSid* | The unique string that identifies the resource to fetch | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| reader | *pathReferenceSid* | The SID of the recording to which the result to delete belongs | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathReferenceSid* |  The SID of the recording to which the result to delete belongs | String
+| deleter | *pathSid* |  The unique string that identifies the resource to delete | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathReferenceSid* |  The SID of the recording to which the result to delete belongs | String
+| fetcher | *pathSid* |  The unique string that identifies the resource to fetch | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| reader | *pathReferenceSid* |  The SID of the recording to which the result to delete belongs | String
 |===
 
 In addition to the parameters above, the recording-add-on-result API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1777,16 +1725,14 @@ The notification API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the notification API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1843,24 +1789,22 @@ The sip-domain-ip-access-control-list-mapping API method(s) has the following se
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *ipAccessControlListSid* | The unique id of the IP access control list to map to the SIP domain | String
-| creator | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| creator | *pathDomainSid* | A string that uniquely identifies the SIP Domain | String
-| deleter | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| deleter | *pathDomainSid* | A string that uniquely identifies the SIP Domain | String
-| deleter | *pathSid* | A 34 character string that uniquely identifies the resource to delete. | String
-| fetcher | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| fetcher | *pathDomainSid* | A string that uniquely identifies the SIP Domain | String
-| fetcher | *pathSid* | A 34 character string that uniquely identifies the resource to fetch. | String
-| reader | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| reader | *pathDomainSid* | A string that uniquely identifies the SIP Domain | String
+| creator | *ipAccessControlListSid* |  The unique id of the IP access control list to map to the SIP domain | String
+| creator | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| creator | *pathDomainSid* |  A string that uniquely identifies the SIP Domain | String
+| deleter | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| deleter | *pathDomainSid* |  A string that uniquely identifies the SIP Domain | String
+| deleter | *pathSid* |  A 34 character string that uniquely identifies the resource to delete. | String
+| fetcher | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| fetcher | *pathDomainSid* |  A string that uniquely identifies the SIP Domain | String
+| fetcher | *pathSid* |  A 34 character string that uniquely identifies the resource to fetch. | String
+| reader | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| reader | *pathDomainSid* |  A string that uniquely identifies the SIP Domain | String
 |===
 
 In addition to the parameters above, the sip-domain-ip-access-control-list-mapping API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1922,22 +1866,20 @@ The sip-domain API method(s) has the following set of parameters listed in the t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *domainName* | The unique address on Twilio to route SIP traffic | String
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resource to update | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| creator | *domainName* |  The unique address on Twilio to route SIP traffic | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resource to update | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the sip-domain API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -1999,27 +1941,25 @@ The address API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *city* | The city of the new address | String
-| creator | *customerName* | The name to associate with the new address | String
-| creator | *isoCountry* | The ISO country code of the new address | String
-| creator | *pathAccountSid* | The SID of the Account that will be responsible for the new Address resource | String
-| creator | *postalCode* | The postal code of the new address | String
-| creator | *region* | The state or region of the new address | String
-| creator | *street* | The number and street address of the new address | String
-| deleter | *pathAccountSid* | The SID of the Account that is responsible for the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that is responsible for this address | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that is responsible for this address | String
-| updater | *pathAccountSid* | The SID of the Account that is responsible for the resource to update | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| creator | *city* |  The city of the new address | String
+| creator | *customerName* |  The name to associate with the new address | String
+| creator | *isoCountry* |  The ISO country code of the new address | String
+| creator | *pathAccountSid* |  The SID of the Account that will be responsible for the new Address resource | String
+| creator | *postalCode* |  The postal code of the new address | String
+| creator | *region* |  The state or region of the new address | String
+| creator | *street* |  The number and street address of the new address | String
+| deleter | *pathAccountSid* |  The SID of the Account that is responsible for the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that is responsible for this address | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that is responsible for this address | String
+| updater | *pathAccountSid* |  The SID of the Account that is responsible for the resource to update | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the address API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2071,21 +2011,19 @@ The message-media API method(s) has the following set of parameters listed in th
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resource(s) to delete | String
-| deleter | *pathMessageSid* | The SID of the Message resource that this Media resource belongs to | String
-| deleter | *pathSid* | The unique string that identifies this resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource(s) to fetch | String
-| fetcher | *pathMessageSid* | The SID of the Message resource that this Media resource belongs to | String
-| fetcher | *pathSid* | The unique string that identifies this resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resource(s) to read | String
-| reader | *pathMessageSid* | The SID of the Message resource that this Media resource belongs to | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resource(s) to delete | String
+| deleter | *pathMessageSid* |  The SID of the Message resource that this Media resource belongs to | String
+| deleter | *pathSid* |  The unique string that identifies this resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource(s) to fetch | String
+| fetcher | *pathMessageSid* |  The SID of the Message resource that this Media resource belongs to | String
+| fetcher | *pathSid* |  The unique string that identifies this resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resource(s) to read | String
+| reader | *pathMessageSid* |  The SID of the Message resource that this Media resource belongs to | String
 |===
 
 In addition to the parameters above, the message-media API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2147,28 +2085,26 @@ The sip-ip-access-control-list-ip-address API method(s) has the following set of
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *friendlyName* | A human readable descriptive text for this resource, up to 64 characters long. | String
-| creator | *ipAddress* | An IP address in dotted decimal notation from which you want to accept traffic. Any SIP requests from this IP address will be allowed by Twilio. IPv4 only supported today. | String
-| creator | *pathAccountSid* | The unique sid that identifies this account | String
-| creator | *pathIpAccessControlListSid* | The IpAccessControlList Sid with which to associate the created IpAddress resource | String
-| deleter | *pathAccountSid* | The unique sid that identifies this account | String
-| deleter | *pathIpAccessControlListSid* | The IpAccessControlList Sid with which to associate the created IpAddress resource | String
-| deleter | *pathSid* | A string that identifies the resource to delete | String
-| fetcher | *pathAccountSid* | The unique sid that identifies this account | String
-| fetcher | *pathIpAccessControlListSid* | The IpAccessControlList Sid with which to associate the created IpAddress resource | String
-| fetcher | *pathSid* | A string that identifies the IpAddress resource to fetch | String
-| reader | *pathAccountSid* | The unique sid that identifies this account | String
-| reader | *pathIpAccessControlListSid* | The IpAccessControlList Sid with which to associate the created IpAddress resource | String
-| updater | *pathAccountSid* | The unique sid that identifies this account | String
-| updater | *pathIpAccessControlListSid* | The IpAccessControlList Sid with which to associate the created IpAddress resource | String
-| updater | *pathSid* | A string that identifies the IpAddress resource to update | String
+| creator | *friendlyName* |  A human readable descriptive text for this resource, up to 64 characters long. | String
+| creator | *ipAddress* |  An IP address in dotted decimal notation from which you want to accept traffic. Any SIP requests from this IP address will be allowed by Twilio. IPv4 only supported today. | String
+| creator | *pathAccountSid* |  The unique sid that identifies this account | String
+| creator | *pathIpAccessControlListSid* |  The IpAccessControlList Sid with which to associate the created IpAddress resource | String
+| deleter | *pathAccountSid* |  The unique sid that identifies this account | String
+| deleter | *pathIpAccessControlListSid* |  The IpAccessControlList Sid with which to associate the created IpAddress resource | String
+| deleter | *pathSid* |  A string that identifies the resource to delete | String
+| fetcher | *pathAccountSid* |  The unique sid that identifies this account | String
+| fetcher | *pathIpAccessControlListSid* |  The IpAccessControlList Sid with which to associate the created IpAddress resource | String
+| fetcher | *pathSid* |  A string that identifies the IpAddress resource to fetch | String
+| reader | *pathAccountSid* |  The unique sid that identifies this account | String
+| reader | *pathIpAccessControlListSid* |  The IpAccessControlList Sid with which to associate the created IpAddress resource | String
+| updater | *pathAccountSid* |  The unique sid that identifies this account | String
+| updater | *pathIpAccessControlListSid* |  The IpAccessControlList Sid with which to associate the created IpAddress resource | String
+| updater | *pathSid* |  A string that identifies the IpAddress resource to update | String
 |===
 
 In addition to the parameters above, the sip-ip-access-control-list-ip-address API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2215,16 +2151,14 @@ The available-phone-number-country API method(s) has the following set of parame
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| fetcher | *pathAccountSid* | The SID of the Account requesting the available phone number Country resource | String
-| fetcher | *pathCountryCode* | The ISO country code of the country to fetch available phone number information about | String
-| reader | *pathAccountSid* | The SID of the Account requesting the available phone number Country resources | String
+| fetcher | *pathAccountSid* |  The SID of the Account requesting the available phone number Country resource | String
+| fetcher | *pathCountryCode* |  The ISO country code of the country to fetch available phone number information about | String
+| reader | *pathAccountSid* |  The SID of the Account requesting the available phone number Country resources | String
 |===
 
 In addition to the parameters above, the available-phone-number-country API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2266,14 +2200,12 @@ The usage-record-yearly API method(s) has the following set of parameters listed
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record-yearly API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2335,22 +2267,20 @@ The queue API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *friendlyName* | A string to describe this resource | String
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| deleter | *pathAccountSid* | The SID of the Account that created the resource(s) to delete | String
-| deleter | *pathSid* | The unique string that identifies this resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource(s) to fetch | String
-| fetcher | *pathSid* | The unique string that identifies this resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resource(s) to fetch | String
-| updater | *pathAccountSid* | The SID of the Account that created the resource(s) to update | String
-| updater | *pathSid* | The unique string that identifies this resource | String
+| creator | *friendlyName* |  A string to describe this resource | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resource(s) to delete | String
+| deleter | *pathSid* |  The unique string that identifies this resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource(s) to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies this resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resource(s) to fetch | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resource(s) to update | String
+| updater | *pathSid* |  The unique string that identifies this resource | String
 |===
 
 In addition to the parameters above, the queue API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2402,18 +2332,16 @@ The transcription API method(s) has the following set of parameters listed in th
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the transcription API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2470,24 +2398,22 @@ The sip-domain-credential-list-mapping API method(s) has the following set of pa
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *credentialListSid* | A string that identifies the CredentialList resource to map to the SIP domain | String
-| creator | *pathAccountSid* | The unique sid that identifies this account | String
-| creator | *pathDomainSid* | A string that identifies the SIP Domain for which the CredentialList resource will be mapped | String
-| deleter | *pathAccountSid* | The unique sid that identifies this account | String
-| deleter | *pathDomainSid* | A string that identifies the SIP Domain for which the CredentialList resource will be mapped | String
-| deleter | *pathSid* | A string that identifies the resource to delete | String
-| fetcher | *pathAccountSid* | The unique sid that identifies this account | String
-| fetcher | *pathDomainSid* | A string that identifies the SIP Domain for which the CredentialList resource will be mapped | String
-| fetcher | *pathSid* | A string that identifies the resource to fetch | String
-| reader | *pathAccountSid* | The unique sid that identifies this account | String
-| reader | *pathDomainSid* | A string that identifies the SIP Domain for which the CredentialList resource will be mapped | String
+| creator | *credentialListSid* |  A string that identifies the CredentialList resource to map to the SIP domain | String
+| creator | *pathAccountSid* |  The unique sid that identifies this account | String
+| creator | *pathDomainSid* |  A string that identifies the SIP Domain for which the CredentialList resource will be mapped | String
+| deleter | *pathAccountSid* |  The unique sid that identifies this account | String
+| deleter | *pathDomainSid* |  A string that identifies the SIP Domain for which the CredentialList resource will be mapped | String
+| deleter | *pathSid* |  A string that identifies the resource to delete | String
+| fetcher | *pathAccountSid* |  The unique sid that identifies this account | String
+| fetcher | *pathDomainSid* |  A string that identifies the SIP Domain for which the CredentialList resource will be mapped | String
+| fetcher | *pathSid* |  A string that identifies the resource to fetch | String
+| reader | *pathAccountSid* |  The unique sid that identifies this account | String
+| reader | *pathDomainSid* |  A string that identifies the SIP Domain for which the CredentialList resource will be mapped | String
 |===
 
 In addition to the parameters above, the sip-domain-credential-list-mapping API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2539,21 +2465,19 @@ The call-feedback API method(s) has the following set of parameters listed in th
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The unique sid that identifies this account | String
-| creator | *pathCallSid* | The call sid that uniquely identifies the call | String
-| creator | *qualityScore* | The call quality expressed as an integer from 1 to 5 | Integer
-| fetcher | *pathAccountSid* | The unique sid that identifies this account | String
-| fetcher | *pathCallSid* | The call sid that uniquely identifies the call | String
-| updater | *pathAccountSid* | The unique sid that identifies this account | String
-| updater | *pathCallSid* | The call sid that uniquely identifies the call | String
-| updater | *qualityScore* | The call quality expressed as an integer from 1 to 5 | Integer
+| creator | *pathAccountSid* |  The unique sid that identifies this account | String
+| creator | *pathCallSid* |  The call sid that uniquely identifies the call | String
+| creator | *qualityScore* |  The call quality expressed as an integer from 1 to 5 | Integer
+| fetcher | *pathAccountSid* |  The unique sid that identifies this account | String
+| fetcher | *pathCallSid* |  The call sid that uniquely identifies the call | String
+| updater | *pathAccountSid* |  The unique sid that identifies this account | String
+| updater | *pathCallSid* |  The call sid that uniquely identifies the call | String
+| updater | *qualityScore* |  The call quality expressed as an integer from 1 to 5 | Integer
 |===
 
 In addition to the parameters above, the call-feedback API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2610,20 +2534,18 @@ The key API method(s) has the following set of parameters listed in the table be
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resources to update | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resources to update | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the key API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2670,16 +2592,14 @@ The incoming-phone-number-toll-free API method(s) has the following set of param
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *phoneNumber* | The phone number to purchase in E.164 format | PhoneNumber
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *phoneNumber* |  The phone number to purchase in E.164 format | PhoneNumber
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the incoming-phone-number-toll-free API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2721,14 +2641,12 @@ The token API method(s) has the following set of parameters listed in the table
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
 |===
 
 In addition to the parameters above, the token API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2780,18 +2698,16 @@ The short-code API method(s) has the following set of parameters listed in the t
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource(s) to fetch | String
-| fetcher | *pathSid* | The unique string that identifies this resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resource(s) to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resource(s) to update | String
-| updater | *pathSid* | The unique string that identifies this resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource(s) to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies this resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resource(s) to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resource(s) to update | String
+| updater | *pathSid* |  The unique string that identifies this resource | String
 |===
 
 In addition to the parameters above, the short-code API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2833,15 +2749,13 @@ The available-phone-number-country-toll-free API method(s) has the following set
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account requesting the AvailablePhoneNumber resources | String
-| reader | *pathCountryCode* | The ISO Country code of the country from which to read phone numbers | String
+| reader | *pathAccountSid* |  The SID of the Account requesting the AvailablePhoneNumber resources | String
+| reader | *pathCountryCode* |  The ISO Country code of the country from which to read phone numbers | String
 |===
 
 In addition to the parameters above, the available-phone-number-country-toll-free API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2883,14 +2797,12 @@ The usage-record-monthly API method(s) has the following set of parameters liste
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the usage-record-monthly API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -2952,23 +2864,21 @@ The sip-ip-access-control-list API method(s) has the following set of parameters
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *friendlyName* | A human readable description of this resource | String
-| creator | *pathAccountSid* | The unique sid that identifies this account | String
-| deleter | *pathAccountSid* | The unique sid that identifies this account | String
-| deleter | *pathSid* | A string that identifies the resource to delete | String
-| fetcher | *pathAccountSid* | The unique sid that identifies this account | String
-| fetcher | *pathSid* | A string that identifies the resource to fetch | String
-| reader | *pathAccountSid* | The unique sid that identifies this account | String
-| updater | *friendlyName* | A human readable description of this resource | String
-| updater | *pathAccountSid* | The unique sid that identifies this account | String
-| updater | *pathSid* | A string that identifies the resource to update | String
+| creator | *friendlyName* |  A human readable description of this resource | String
+| creator | *pathAccountSid* |  The unique sid that identifies this account | String
+| deleter | *pathAccountSid* |  The unique sid that identifies this account | String
+| deleter | *pathSid* |  A string that identifies the resource to delete | String
+| fetcher | *pathAccountSid* |  The unique sid that identifies this account | String
+| fetcher | *pathSid* |  A string that identifies the resource to fetch | String
+| reader | *pathAccountSid* |  The unique sid that identifies this account | String
+| updater | *friendlyName* |  A human readable description of this resource | String
+| updater | *pathAccountSid* |  The unique sid that identifies this account | String
+| updater | *pathSid* |  A string that identifies the resource to update | String
 |===
 
 In addition to the parameters above, the sip-ip-access-control-list API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3025,20 +2935,18 @@ The connect-app API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resources to update | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resources to update | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the connect-app API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3080,15 +2988,13 @@ The address-dependent-phone-number API method(s) has the following set of parame
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| reader | *pathAddressSid* | The SID of the Address resource associated with the phone number | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| reader | *pathAddressSid* |  The SID of the Address resource associated with the phone number | String
 |===
 
 In addition to the parameters above, the address-dependent-phone-number API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3145,20 +3051,18 @@ The signing-key API method(s) has the following set of parameters listed in the
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The account_sid | String
-| deleter | *pathSid* | The sid | String
-| fetcher | *pathAccountSid* | The account_sid | String
-| fetcher | *pathSid* | The sid | String
-| reader | *pathAccountSid* | The account_sid | String
-| updater | *pathAccountSid* | The account_sid | String
-| updater | *pathSid* | The sid | String
+| deleter | *pathAccountSid* |  The account_sid | String
+| deleter | *pathSid* |  The sid | String
+| fetcher | *pathAccountSid* |  The account_sid | String
+| fetcher | *pathSid* |  The sid | String
+| reader | *pathAccountSid* |  The account_sid | String
+| updater | *pathAccountSid* |  The account_sid | String
+| updater | *pathSid* |  The sid | String
 |===
 
 In addition to the parameters above, the signing-key API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3215,20 +3119,18 @@ The outgoing-caller-id API method(s) has the following set of parameters listed
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resources to update | String
-| updater | *pathSid* | The unique string that identifies the resource | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resources to update | String
+| updater | *pathSid* |  The unique string that identifies the resource | String
 |===
 
 In addition to the parameters above, the outgoing-caller-id API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3298,26 +3200,24 @@ The call API method(s) has the following set of parameters listed in the table b
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *applicationSid* | The SID of the Application resource that will handle the call | String
-| creator | *from* | Twilio number from which to originate the call | Endpoint
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *to* | Phone number, SIP address, or client identifier to call | Endpoint
-| creator | *twiml* | TwiML instructions for the call | Twiml
-| creator | *url* | The absolute URL that returns TwiML for this call | URI
-| deleter | *pathAccountSid* | The SID of the Account that created the resource(s) to delete | String
-| deleter | *pathSid* | The unique string that identifies this resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource(s) to fetch | String
-| fetcher | *pathSid* | The SID of the Call resource to fetch | String
-| reader | *pathAccountSid* | The SID of the Account that created the resource(s) to read | String
-| updater | *pathAccountSid* | The SID of the Account that created the resource(s) to update | String
-| updater | *pathSid* | The unique string that identifies this resource | String
+| creator | *applicationSid* |  The SID of the Application resource that will handle the call | String
+| creator | *from* |  Twilio number from which to originate the call | Endpoint
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *to* |  Phone number, SIP address, or client identifier to call | Endpoint
+| creator | *twiml* |  TwiML instructions for the call | Twiml
+| creator | *url* |  The absolute URL that returns TwiML for this call | URI
+| deleter | *pathAccountSid* |  The SID of the Account that created the resource(s) to delete | String
+| deleter | *pathSid* |  The unique string that identifies this resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource(s) to fetch | String
+| fetcher | *pathSid* |  The SID of the Call resource to fetch | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resource(s) to read | String
+| updater | *pathAccountSid* |  The SID of the Account that created the resource(s) to update | String
+| updater | *pathSid* |  The unique string that identifies this resource | String
 |===
 
 In addition to the parameters above, the call API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3364,16 +3264,14 @@ The incoming-phone-number-local API method(s) has the following set of parameter
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *phoneNumber* | The phone number to purchase in E.164 format | PhoneNumber
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *phoneNumber* |  The phone number to purchase in E.164 format | PhoneNumber
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the incoming-phone-number-local API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3415,15 +3313,13 @@ The message-feedback API method(s) has the following set of parameters listed in
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *pathMessageSid* | The SID of the Message resource for which the feedback was provided | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *pathMessageSid* |  The SID of the Message resource for which the feedback was provided | String
 |===
 
 In addition to the parameters above, the message-feedback API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3475,18 +3371,16 @@ The recording API method(s) has the following set of parameters listed in the ta
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| deleter | *pathAccountSid* | The SID of the Account that created the resources to delete | String
-| deleter | *pathSid* | The unique string that identifies the resource | String
-| fetcher | *pathAccountSid* | The SID of the Account that created the resource to fetch | String
-| fetcher | *pathSid* | The unique string that identifies the resource | String
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| deleter | *pathAccountSid* |  The SID of the Account that created the resources to delete | String
+| deleter | *pathSid* |  The unique string that identifies the resource | String
+| fetcher | *pathAccountSid* |  The SID of the Account that created the resource to fetch | String
+| fetcher | *pathSid* |  The unique string that identifies the resource | String
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the recording API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3533,16 +3427,14 @@ The incoming-phone-number-mobile API method(s) has the following set of paramete
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *pathAccountSid* | The SID of the Account that will create the resource | String
-| creator | *phoneNumber* | The phone number to purchase in E.164 format | PhoneNumber
-| reader | *pathAccountSid* | The SID of the Account that created the resources to read | String
+| creator | *pathAccountSid* |  The SID of the Account that will create the resource | String
+| creator | *phoneNumber* |  The phone number to purchase in E.164 format | PhoneNumber
+| reader | *pathAccountSid* |  The SID of the Account that created the resources to read | String
 |===
 
 In addition to the parameters above, the incoming-phone-number-mobile API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3589,15 +3481,13 @@ The account API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| fetcher | *pathSid* | Fetch by unique Account Sid | String
-| updater | *pathSid* | Update by unique Account Sid | String
+| fetcher | *pathSid* |  Fetch by unique Account Sid | String
+| updater | *pathSid* |  Update by unique Account Sid | String
 |===
 
 In addition to the parameters above, the account API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
@@ -3659,23 +3549,21 @@ The sip-credential-list API method(s) has the following set of parameters listed
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| creator | *friendlyName* | Human readable descriptive text | String
-| creator | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| deleter | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| deleter | *pathSid* | Delete by unique credential list Sid | String
-| fetcher | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| fetcher | *pathSid* | Fetch by unique credential list Sid | String
-| reader | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| updater | *friendlyName* | Human readable descriptive text | String
-| updater | *pathAccountSid* | The unique id of the Account that is responsible for this resource | String
-| updater | *pathSid* | Update by unique credential list Sid | String
+| creator | *friendlyName* |  Human readable descriptive text | String
+| creator | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| deleter | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| deleter | *pathSid* |  Delete by unique credential list Sid | String
+| fetcher | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| fetcher | *pathSid* |  Fetch by unique credential list Sid | String
+| reader | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| updater | *friendlyName* |  Human readable descriptive text | String
+| updater | *pathAccountSid* |  The unique id of the Account that is responsible for this resource | String
+| updater | *pathSid* |  Update by unique credential list Sid | String
 |===
 
 In addition to the parameters above, the sip-credential-list API can also use from the 23 endpoint query option
 which is listed in the _Query Parameters_ section.
 
-==== Message headers and body
-
 Any of the parameters can be provided in either the endpoint URI, or dynamically in a message header.
 The message header name must be of the format `CamelTwilio.parameter`.
 The `inBody` parameter overrides message header, i.e. the endpoint parameter `inBody=myParameterNameHere`
diff --git a/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfiguration.java b/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfiguration.java
index 7eea3ed..e329b46 100644
--- a/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfiguration.java
+++ b/components/camel-zendesk/src/generated/java/org/apache/camel/component/zendesk/ZendeskEndpointConfiguration.java
@@ -20,349 +20,349 @@ import org.apache.camel.spi.UriParams;
 @Configurer
 public final class ZendeskEndpointConfiguration extends ZendeskConfiguration {
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createArticle"), @ApiMethod(methodName = "deleteArticle"), @ApiMethod(methodName = "updateArticle")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createArticle"), @ApiMethod(methodName = "deleteArticle"), @ApiMethod(methodName = "updateArticle")})
     private org.zendesk.client.v2.model.hc.Article article;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteArticleAttachment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteArticleAttachment")})
     private org.zendesk.client.v2.model.hc.ArticleAttachments articleAttachments;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createArticleTranslation"), @ApiMethod(methodName = "getArticleSubscriptions"), @ApiMethod(methodName = "getArticleTranslations"), @ApiMethod(methodName = "getAttachmentsFromArticle"), @ApiMethod(methodName = "updateArticleTranslation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createArticleTranslation"), @ApiMethod(methodName = "getArticleSubscriptions"), @ApiMethod(methodName = "getArticleTranslations"), @ApiMethod(methodName = "getAttachmentsFromArticle"), @ApiMethod(methodName = "updateArticleTranslation")})
     private Long articleId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUploadArticle")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUploadArticle")})
     private Long articleId0;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteAttachment"), @ApiMethod(methodName = "getAttachment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteAttachment"), @ApiMethod(methodName = "getAttachment")})
     private org.zendesk.client.v2.model.Attachment attachment;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "associateAttachmentsToArticle")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "associateAttachmentsToArticle")})
     private java.util.List<org.zendesk.client.v2.model.Attachment> attachments;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getTicketAudit"), @ApiMethod(methodName = "makePrivateTicketAudit"), @ApiMethod(methodName = "trustTicketAudit")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getTicketAudit"), @ApiMethod(methodName = "makePrivateTicketAudit"), @ApiMethod(methodName = "trustTicketAudit")})
     private org.zendesk.client.v2.model.Audit audit;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getTicketAudit"), @ApiMethod(methodName = "makePrivateTicketAudit"), @ApiMethod(methodName = "trustTicketAudit")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getTicketAudit"), @ApiMethod(methodName = "makePrivateTicketAudit"), @ApiMethod(methodName = "trustTicketAudit")})
     private Long auditId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createAutomation"), @ApiMethod(methodName = "updateAutomation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createAutomation"), @ApiMethod(methodName = "updateAutomation")})
     private org.zendesk.client.v2.model.Automation automation;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateAutomation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateAutomation")})
     private Long automationId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteAutomation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteAutomation")})
     private Long automationId0;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createCategory"), @ApiMethod(methodName = "deleteCategory"), @ApiMethod(methodName = "getArticles"), @ApiMethod(methodName = "getSections"), @ApiMethod(methodName = "updateCategory")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createCategory"), @ApiMethod(methodName = "deleteCategory"), @ApiMethod(methodName = "getArticles"), @ApiMethod(methodName = "getSections"), @ApiMethod(methodName = "updateCategory")})
     private org.zendesk.client.v2.model.hc.Category category;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createCategoryTranslation"), @ApiMethod(methodName = "getCategoryTranslations"), @ApiMethod(methodName = "updateCategoryTranslation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createCategoryTranslation"), @ApiMethod(methodName = "getCategoryTranslations"), @ApiMethod(methodName = "updateCategoryTranslation")})
     private Long categoryId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getForums")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getForums")})
     private Long category_id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createComment"), @ApiMethod(methodName = "getRequestComment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createComment"), @ApiMethod(methodName = "getRequestComment")})
     private org.zendesk.client.v2.model.Comment comment;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getRequestComment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getRequestComment")})
     private Long commentId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUpload")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUpload")})
     private byte[] content;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUpload")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUpload")})
     private String contentType;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "lookupUserByEmail")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "lookupUserByEmail")})
     private String email;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getTicketsIncrementally")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getTicketsIncrementally")})
     private java.util.Date endTime;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getTicketsByExternalId"), @ApiMethod(methodName = "lookupOrganizationsByExternalId"), @ApiMethod(methodName = "lookupUserByExternalId")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getTicketsByExternalId"), @ApiMethod(methodName = "lookupOrganizationsByExternalId"), @ApiMethod(methodName = "lookupUserByExternalId")})
     private String externalId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTicketField"), @ApiMethod(methodName = "deleteTicketField"), @ApiMethod(methodName = "updateTicketField")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTicketField"), @ApiMethod(methodName = "deleteTicketField"), @ApiMethod(methodName = "updateTicketField")})
     private org.zendesk.client.v2.model.Field field;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUploadArticle")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUploadArticle")})
     private java.io.File file;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUpload")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUpload")})
     private String fileName;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createForum"), @ApiMethod(methodName = "deleteForum"), @ApiMethod(methodName = "updateForum")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createForum"), @ApiMethod(methodName = "deleteForum"), @ApiMethod(methodName = "updateForum")})
     private org.zendesk.client.v2.model.Forum forum;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getTopics")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getTopics")})
     private Long forum_id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroup"), @ApiMethod(methodName = "deleteGroup"), @ApiMethod(methodName = "updateGroup")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createGroup"), @ApiMethod(methodName = "deleteGroup"), @ApiMethod(methodName = "updateGroup")})
     private org.zendesk.client.v2.model.Group group;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroupMembership"), @ApiMethod(methodName = "deleteGroupMembership"), @ApiMethod(methodName = "setGroupMembershipAsDefault")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createGroupMembership"), @ApiMethod(methodName = "deleteGroupMembership"), @ApiMethod(methodName = "setGroupMembershipAsDefault")})
     private org.zendesk.client.v2.model.GroupMembership groupMembership;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getAssignableGroupMemberships"), @ApiMethod(methodName = "getGroupMemberships")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getAssignableGroupMemberships"), @ApiMethod(methodName = "getGroupMemberships")})
     private Long group_id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteGroupMembership"), @ApiMethod(methodName = "getGroupMembership")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteGroupMembership"), @ApiMethod(methodName = "getGroupMembership")})
     private Long group_membership_id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addTagToOrganisations"), @ApiMethod(methodName = "addTagToTicket"), @ApiMethod(methodName = "addTagToTopics"), @ApiMethod(methodName = "deleteArticleAttachment", description="Attachment identifier"), @ApiMethod(methodName = "deleteAttachment"), @ApiMethod(methodName = "deleteGroup"), @ApiMethod(methodName = "deleteGroupMembership"), @ApiMethod(methodName = "deleteOrganization"), @ApiMethod(methodName = "deleteOrganizationMembership"),  [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addTagToOrganisations"), @ApiMethod(methodName = "addTagToTicket"), @ApiMethod(methodName = "addTagToTopics"), @ApiMethod(methodName = "deleteArticleAttachment", description="Attachment identifier"), @ApiMethod(methodName = "deleteAttachment"), @ApiMethod(methodName = "deleteGroup"), @ApiMethod(methodName = "deleteGroupMembership"), @ApiMethod(methodName = "deleteOrganization"), @ApiMethod(methodName = "deleteOrganiza [...]
     private Long id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "associateAttachmentsToArticle")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "associateAttachmentsToArticle")})
     private String idArticle;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUserIdentity"), @ApiMethod(methodName = "deleteUserIdentity"), @ApiMethod(methodName = "getUserIdentity"), @ApiMethod(methodName = "requestVerifyUserIdentity"), @ApiMethod(methodName = "setUserPrimaryIdentity"), @ApiMethod(methodName = "updateUserIdentity"), @ApiMethod(methodName = "verifyUserIdentity")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUserIdentity"), @ApiMethod(methodName = "deleteUserIdentity"), @ApiMethod(methodName = "getUserIdentity"), @ApiMethod(methodName = "requestVerifyUserIdentity"), @ApiMethod(methodName = "setUserPrimaryIdentity"), @ApiMethod(methodName = "updateUserIdentity"), @ApiMethod(methodName = "verifyUserIdentity")})
     private org.zendesk.client.v2.model.Identity identity;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteUserIdentity"), @ApiMethod(methodName = "getUserIdentity"), @ApiMethod(methodName = "requestVerifyUserIdentity"), @ApiMethod(methodName = "setUserPrimaryIdentity"), @ApiMethod(methodName = "verifyUserIdentity")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteUserIdentity"), @ApiMethod(methodName = "getUserIdentity"), @ApiMethod(methodName = "requestVerifyUserIdentity"), @ApiMethod(methodName = "setUserPrimaryIdentity"), @ApiMethod(methodName = "verifyUserIdentity")})
     private Long identityId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteOrganizationMemberships"), @ApiMethod(methodName = "deleteTickets"), @ApiMethod(methodName = "getTickets"), @ApiMethod(methodName = "getTopics"), @ApiMethod(methodName = "permanentlyDeleteTickets")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteOrganizationMemberships"), @ApiMethod(methodName = "deleteTickets"), @ApiMethod(methodName = "getTickets"), @ApiMethod(methodName = "getTopics"), @ApiMethod(methodName = "permanentlyDeleteTickets")})
     private long[] ids;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getTicketsByExternalId")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getTicketsByExternalId")})
     private Boolean includeArchived;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUploadArticle")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUploadArticle")})
     private Boolean inline;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateInstallation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateInstallation")})
     private Integer installationId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createDynamicContentItem"), @ApiMethod(methodName = "deleteDynamicContentItem"), @ApiMethod(methodName = "getDynamicContentItemVariants"), @ApiMethod(methodName = "updateDynamicContentItem")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createDynamicContentItem"), @ApiMethod(methodName = "deleteDynamicContentItem"), @ApiMethod(methodName = "getDynamicContentItemVariants"), @ApiMethod(methodName = "updateDynamicContentItem")})
     private org.zendesk.client.v2.model.dynamic.DynamicContentItem item;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createDynamicContentItemVariant"), @ApiMethod(methodName = "deleteDynamicContentItemVariant"), @ApiMethod(methodName = "getDynamicContentItemVariant"), @ApiMethod(methodName = "updateDynamicContentItemVariant")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createDynamicContentItemVariant"), @ApiMethod(methodName = "deleteDynamicContentItemVariant"), @ApiMethod(methodName = "getDynamicContentItemVariant"), @ApiMethod(methodName = "updateDynamicContentItemVariant")})
     private Long itemId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "notifyApp"), @ApiMethod(methodName = "updateInstallation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "notifyApp"), @ApiMethod(methodName = "updateInstallation")})
     private String json;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getArticlesFromAllLabels"), @ApiMethod(methodName = "getArticlesFromAnyLabels")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getArticlesFromAllLabels"), @ApiMethod(methodName = "getArticlesFromAnyLabels")})
     private java.util.List<String> labels;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getArticles"), @ApiMethod(methodName = "getArticleSubscriptions"), @ApiMethod(methodName = "getSectionSubscriptions"), @ApiMethod(methodName = "updateArticleTranslation"), @ApiMethod(methodName = "updateCategoryTranslation"), @ApiMethod(methodName = "updateSectionTranslation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getArticles"), @ApiMethod(methodName = "getArticleSubscriptions"), @ApiMethod(methodName = "getSectionSubscriptions"), @ApiMethod(methodName = "updateArticleTranslation"), @ApiMethod(methodName = "updateCategoryTranslation"), @ApiMethod(methodName = "updateSectionTranslation")})
     private String locale;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createMacro"), @ApiMethod(methodName = "updateMacro")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createMacro"), @ApiMethod(methodName = "updateMacro")})
     private org.zendesk.client.v2.model.Macro macro;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getMacro"), @ApiMethod(methodName = "macrosShowChangesToTicket"), @ApiMethod(methodName = "macrosShowTicketAfterChanges")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getMacro"), @ApiMethod(methodName = "macrosShowChangesToTicket"), @ApiMethod(methodName = "macrosShowTicketAfterChanges")})
     private Long macroId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateMacro")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateMacro")})
     private Long macroId0;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTicketFromTweet")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTicketFromTweet")})
     private Long monitorId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getAutoCompleteOrganizations")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getAutoCompleteOrganizations")})
     private String name;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "changeUserPassword")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "changeUserPassword")})
     private String newPassword;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createArticle")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createArticle")})
     private Boolean notifySubscribers;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "changeUserPassword")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "changeUserPassword")})
     private String oldPassword;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getTicketComments")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getTicketComments")})
     private org.zendesk.client.v2.model.SortOrder order;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createOrganization"), @ApiMethod(methodName = "deleteOrganization"), @ApiMethod(methodName = "updateOrganization")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createOrganization"), @ApiMethod(methodName = "deleteOrganization"), @ApiMethod(methodName = "updateOrganization")})
     private org.zendesk.client.v2.model.Organization organization;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getOrganizationTickets")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getOrganizationTickets")})
     private Long organizationId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createOrganizations"), @ApiMethod(methodName = "createOrganizationsAsync"), @ApiMethod(methodName = "updateOrganizations"), @ApiMethod(methodName = "updateOrganizationsAsync")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createOrganizations"), @ApiMethod(methodName = "createOrganizationsAsync"), @ApiMethod(methodName = "updateOrganizations"), @ApiMethod(methodName = "updateOrganizationsAsync")})
     private java.util.List<org.zendesk.client.v2.model.Organization> organizationList;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createOrganizationMembership"), @ApiMethod(methodName = "deleteOrganizationMembership"), @ApiMethod(methodName = "setOrganizationMembershipAsDefault")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createOrganizationMembership"), @ApiMethod(methodName = "deleteOrganizationMembership"), @ApiMethod(methodName = "setOrganizationMembershipAsDefault")})
     private org.zendesk.client.v2.model.OrganizationMembership organizationMembership;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createOrganizationMemberships"), @ApiMethod(methodName = "createOrganizationMembershipsAsync")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createOrganizationMemberships"), @ApiMethod(methodName = "createOrganizationMembershipsAsync")})
     private java.util.List<org.zendesk.client.v2.model.OrganizationMembership> organizationMembershipList;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createOrganizationMemberships")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createOrganizationMemberships")})
     private org.zendesk.client.v2.model.OrganizationMembership[] organizationMemberships;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getOrganizationMembershipsForOrg")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getOrganizationMembershipsForOrg")})
     private Long organization_id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteOrganizationMembership"), @ApiMethod(methodName = "getGroupOrganization")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteOrganizationMembership"), @ApiMethod(methodName = "getGroupOrganization")})
     private Long organization_membership_id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createOrganizations"), @ApiMethod(methodName = "updateOrganizations")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createOrganizations"), @ApiMethod(methodName = "updateOrganizations")})
     private org.zendesk.client.v2.model.Organization[] organizations;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getArticlesFromPage")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getArticlesFromPage")})
     private Integer page;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getSearchResults")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getSearchResults")})
     private String parameters;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getSearchResults")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getSearchResults")})
     private java.util.Map<String, Object> params;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "resetUserPassword")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "resetUserPassword")})
     private String password;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createPermissionGroup"), @ApiMethod(methodName = "deletePermissionGroup"), @ApiMethod(methodName = "updatePermissionGroup")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createPermissionGroup"), @ApiMethod(methodName = "deletePermissionGroup"), @ApiMethod(methodName = "updatePermissionGroup")})
     private org.zendesk.client.v2.model.hc.PermissionGroup permissionGroup;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getSearchResults")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getSearchResults")})
     private String query;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createRequest"), @ApiMethod(methodName = "getRequestComment"), @ApiMethod(methodName = "getRequestComments"), @ApiMethod(methodName = "updateRequest")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createRequest"), @ApiMethod(methodName = "getRequestComment"), @ApiMethod(methodName = "getRequestComments"), @ApiMethod(methodName = "updateRequest")})
     private org.zendesk.client.v2.model.Request request;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getRequestComment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getRequestComment")})
     private Long requestId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getUsersByRole")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getUsersByRole")})
     private String role;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getUsersByRole")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getUsersByRole")})
     private String[] roles;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createSatisfactionRating")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createSatisfactionRating")})
     private org.zendesk.client.v2.model.SatisfactionRating satisfactionRating;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getHolidaysForSchedule"), @ApiMethod(methodName = "getSchedule")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getHolidaysForSchedule"), @ApiMethod(methodName = "getSchedule")})
     private org.zendesk.client.v2.model.schedules.Schedule schedule;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getHolidaysForSchedule"), @ApiMethod(methodName = "getSchedule")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getHolidaysForSchedule"), @ApiMethod(methodName = "getSchedule")})
     private Long scheduleId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getArticleFromSearch"), @ApiMethod(methodName = "getTicketsFromSearch")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getArticleFromSearch"), @ApiMethod(methodName = "getTicketsFromSearch")})
     private String searchTerm;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createSection"), @ApiMethod(methodName = "deleteSection"), @ApiMethod(methodName = "getArticles"), @ApiMethod(methodName = "updateSection")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createSection"), @ApiMethod(methodName = "deleteSection"), @ApiMethod(methodName = "getArticles"), @ApiMethod(methodName = "updateSection")})
     private org.zendesk.client.v2.model.hc.Section section;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createSectionTranslation"), @ApiMethod(methodName = "getArticleFromSearch"), @ApiMethod(methodName = "getSectionSubscriptions"), @ApiMethod(methodName = "getSectionTranslations"), @ApiMethod(methodName = "updateSectionTranslation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createSectionTranslation"), @ApiMethod(methodName = "getArticleFromSearch"), @ApiMethod(methodName = "getSectionSubscriptions"), @ApiMethod(methodName = "getSectionTranslations"), @ApiMethod(methodName = "updateSectionTranslation")})
     private Long sectionId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getDeletedTickets"), @ApiMethod(methodName = "getSearchResults")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getDeletedTickets"), @ApiMethod(methodName = "getSearchResults")})
     private String sortBy;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getDeletedTickets"), @ApiMethod(methodName = "getSearchResults")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getDeletedTickets"), @ApiMethod(methodName = "getSearchResults")})
     private org.zendesk.client.v2.model.SortOrder sortOrder;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getArticlesIncrementally"), @ApiMethod(methodName = "getOrganizationsIncrementally"), @ApiMethod(methodName = "getTicketsIncrementally"), @ApiMethod(methodName = "getUsersIncrementally")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getArticlesIncrementally"), @ApiMethod(methodName = "getOrganizationsIncrementally"), @ApiMethod(methodName = "getTicketsIncrementally"), @ApiMethod(methodName = "getUsersIncrementally")})
     private java.util.Date startTime;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getJobStatus"), @ApiMethod(methodName = "getJobStatusAsync")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getJobStatus"), @ApiMethod(methodName = "getJobStatusAsync")})
     private org.zendesk.client.v2.model.JobStatus status;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getJobStatuses"), @ApiMethod(methodName = "getJobStatusesAsync")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getJobStatuses"), @ApiMethod(methodName = "getJobStatusesAsync")})
     private java.util.List<org.zendesk.client.v2.model.JobStatus> statuses;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteSuspendedTicket")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteSuspendedTicket")})
     private org.zendesk.client.v2.model.SuspendedTicket suspendedTicket;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "addTagToOrganisations"), @ApiMethod(methodName = "addTagToTicket"), @ApiMethod(methodName = "addTagToTopics"), @ApiMethod(methodName = "removeTagFromOrganisations"), @ApiMethod(methodName = "removeTagFromTicket"), @ApiMethod(methodName = "removeTagFromTopics"), @ApiMethod(methodName = "setTagOnOrganisations"), @ApiMethod(methodName = "setTagOnTicket"), @ApiMethod(methodName = "setTagOnTopics")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "addTagToOrganisations"), @ApiMethod(methodName = "addTagToTicket"), @ApiMethod(methodName = "addTagToTopics"), @ApiMethod(methodName = "removeTagFromOrganisations"), @ApiMethod(methodName = "removeTagFromTicket"), @ApiMethod(methodName = "removeTagFromTopics"), @ApiMethod(methodName = "setTagOnOrganisations"), @ApiMethod(methodName = "setTagOnTicket"), @ApiMethod(methodName = "setTagOnTopics")})
     private String[] tags;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTarget")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTarget")})
     private org.zendesk.client.v2.model.targets.Target target;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteTarget")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteTarget")})
     private Long targetId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createSatisfactionRating"), @ApiMethod(methodName = "createTicket"), @ApiMethod(methodName = "createTicketAsync"), @ApiMethod(methodName = "deleteTicket"), @ApiMethod(methodName = "getTicketAudit"), @ApiMethod(methodName = "getTicketAudits"), @ApiMethod(methodName = "makePrivateTicketAudit"), @ApiMethod(methodName = "markTicketAsSpam"), @ApiMethod(methodName = "permanentlyDeleteTicket"), @ApiMethod(methodName = "queueCreateTicketAsync" [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createSatisfactionRating"), @ApiMethod(methodName = "createTicket"), @ApiMethod(methodName = "createTicketAsync"), @ApiMethod(methodName = "deleteTicket"), @ApiMethod(methodName = "getTicketAudit"), @ApiMethod(methodName = "getTicketAudits"), @ApiMethod(methodName = "makePrivateTicketAudit"), @ApiMethod(methodName = "markTicketAsSpam"), @ApiMethod(methodName = "permanentlyDeleteTicket"), @ApiMethod(methodName = "queue [...]
     private org.zendesk.client.v2.model.Ticket ticket;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTicketForm")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTicketForm")})
     private org.zendesk.client.v2.model.TicketForm ticketForm;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createComment"), @ApiMethod(methodName = "createSatisfactionRating"), @ApiMethod(methodName = "getTicketAudit"), @ApiMethod(methodName = "macrosShowTicketAfterChanges"), @ApiMethod(methodName = "makePrivateTicketAudit"), @ApiMethod(methodName = "trustTicketAudit")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createComment"), @ApiMethod(methodName = "createSatisfactionRating"), @ApiMethod(methodName = "getTicketAudit"), @ApiMethod(methodName = "macrosShowTicketAfterChanges"), @ApiMethod(methodName = "makePrivateTicketAudit"), @ApiMethod(methodName = "trustTicketAudit")})
     private Long ticketId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getTicketAudits")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getTicketAudits")})
     private Long ticketId0;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "importTicket")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "importTicket")})
     private org.zendesk.client.v2.model.TicketImport ticketImport;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTickets"), @ApiMethod(methodName = "createTicketsAsync"), @ApiMethod(methodName = "updateTickets"), @ApiMethod(methodName = "updateTicketsAsync")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTickets"), @ApiMethod(methodName = "createTicketsAsync"), @ApiMethod(methodName = "updateTickets"), @ApiMethod(methodName = "updateTicketsAsync")})
     private java.util.List<org.zendesk.client.v2.model.Ticket> ticketList;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTickets"), @ApiMethod(methodName = "updateTickets")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTickets"), @ApiMethod(methodName = "updateTickets")})
     private org.zendesk.client.v2.model.Ticket[] tickets;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUpload"), @ApiMethod(methodName = "deleteUpload")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUpload"), @ApiMethod(methodName = "deleteUpload")})
     private String token;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTopic"), @ApiMethod(methodName = "deleteTopic"), @ApiMethod(methodName = "importTopic"), @ApiMethod(methodName = "updateTopic")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTopic"), @ApiMethod(methodName = "deleteTopic"), @ApiMethod(methodName = "importTopic"), @ApiMethod(methodName = "updateTopic")})
     private org.zendesk.client.v2.model.Topic topic;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createArticleTranslation"), @ApiMethod(methodName = "createCategoryTranslation"), @ApiMethod(methodName = "createSectionTranslation"), @ApiMethod(methodName = "deleteTranslation"), @ApiMethod(methodName = "updateArticleTranslation"), @ApiMethod(methodName = "updateCategoryTranslation"), @ApiMethod(methodName = "updateSectionTranslation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createArticleTranslation"), @ApiMethod(methodName = "createCategoryTranslation"), @ApiMethod(methodName = "createSectionTranslation"), @ApiMethod(methodName = "deleteTranslation"), @ApiMethod(methodName = "updateArticleTranslation"), @ApiMethod(methodName = "updateCategoryTranslation"), @ApiMethod(methodName = "updateSectionTranslation")})
     private org.zendesk.client.v2.model.hc.Translation translation;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteTranslation")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteTranslation")})
     private Long translationId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTrigger"), @ApiMethod(methodName = "updateTrigger")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTrigger"), @ApiMethod(methodName = "updateTrigger")})
     private org.zendesk.client.v2.model.Trigger trigger;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteTrigger")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteTrigger")})
     private Long triggerId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "updateTrigger")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "updateTrigger")})
     private Long triggerId0;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createTicketFromTweet")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createTicketFromTweet")})
     private Long tweetId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getSearchResults")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getSearchResults")})
     private Class<org.zendesk.client.v2.model.SearchResultEntity> type;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getIncrementalTicketsResult")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getIncrementalTicketsResult")})
     private Long unixEpochTime;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "deleteUpload")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "deleteUpload")})
     private org.zendesk.client.v2.model.Attachment.Upload upload;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "changeUserPassword"), @ApiMethod(methodName = "createOrUpdateUser"), @ApiMethod(methodName = "createUser"), @ApiMethod(methodName = "createUserIdentity"), @ApiMethod(methodName = "deleteUser"), @ApiMethod(methodName = "deleteUserIdentity"), @ApiMethod(methodName = "getUserIdentities"), @ApiMethod(methodName = "getUserIdentity"), @ApiMethod(methodName = "getUserRequests"), @ApiMethod(methodName = "getUserSubscriptions"), @ApiMethod(meth [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "changeUserPassword"), @ApiMethod(methodName = "createOrUpdateUser"), @ApiMethod(methodName = "createUser"), @ApiMethod(methodName = "createUserIdentity"), @ApiMethod(methodName = "deleteUser"), @ApiMethod(methodName = "deleteUserIdentity"), @ApiMethod(methodName = "getUserIdentities"), @ApiMethod(methodName = "getUserIdentity"), @ApiMethod(methodName = "getUserRequests"), @ApiMethod(methodName = "getUserSubscriptions" [...]
     private org.zendesk.client.v2.model.User user;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUserIdentity"), @ApiMethod(methodName = "deleteUserIdentity"), @ApiMethod(methodName = "getComplianceDeletionStatuses"), @ApiMethod(methodName = "getUserCCDTickets"), @ApiMethod(methodName = "getUserIdentities"), @ApiMethod(methodName = "getUserIdentity"), @ApiMethod(methodName = "getUserRelatedInfo"), @ApiMethod(methodName = "getUserRequestedTickets"), @ApiMethod(methodName = "requestVerifyUserIdentity"), @ApiMethod(methodName = [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUserIdentity"), @ApiMethod(methodName = "deleteUserIdentity"), @ApiMethod(methodName = "getComplianceDeletionStatuses"), @ApiMethod(methodName = "getUserCCDTickets"), @ApiMethod(methodName = "getUserIdentities"), @ApiMethod(methodName = "getUserIdentity"), @ApiMethod(methodName = "getUserRelatedInfo"), @ApiMethod(methodName = "getUserRequestedTickets"), @ApiMethod(methodName = "requestVerifyUserIdentity"), @ApiM [...]
     private Long userId;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "getUserSubscriptions")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "getUserSubscriptions")})
     private Long userId0;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "mergeUsers")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "mergeUsers")})
     private Long userIdThatWillBeMerged;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "mergeUsers")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "mergeUsers")})
     private Long userIdThatWillRemain;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUsers"), @ApiMethod(methodName = "createUsersAsync")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUsers"), @ApiMethod(methodName = "createUsersAsync")})
     private java.util.List<org.zendesk.client.v2.model.User> userList;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createUserSegment"), @ApiMethod(methodName = "deleteUserSegment"), @ApiMethod(methodName = "getSections"), @ApiMethod(methodName = "getTopics"), @ApiMethod(methodName = "updateUserSegment")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createUserSegment"), @ApiMethod(methodName = "deleteUserSegment"), @ApiMethod(methodName = "getSections"), @ApiMethod(methodName = "getTopics"), @ApiMethod(methodName = "updateUserSegment")})
     private org.zendesk.client.v2.model.hc.UserSegment userSegment;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createGroupMembership"), @ApiMethod(methodName = "createOrganizationMembership"), @ApiMethod(methodName = "deleteGroupMembership"), @ApiMethod(methodName = "deleteOrganizationMembership"), @ApiMethod(methodName = "getGroupMembership"), @ApiMethod(methodName = "getGroupMembershipByUser"), @ApiMethod(methodName = "getGroupOrganization"), @ApiMethod(methodName = "getOrganizationMembershipByUser"), @ApiMethod(methodName = "getOrganizationM [...]
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createGroupMembership"), @ApiMethod(methodName = "createOrganizationMembership"), @ApiMethod(methodName = "deleteGroupMembership"), @ApiMethod(methodName = "deleteOrganizationMembership"), @ApiMethod(methodName = "getGroupMembership"), @ApiMethod(methodName = "getGroupMembershipByUser"), @ApiMethod(methodName = "getGroupOrganization"), @ApiMethod(methodName = "getOrganizationMembershipByUser"), @ApiMethod(methodName = [...]
     private Long user_id;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createOrUpdateUsers"), @ApiMethod(methodName = "createUsers"), @ApiMethod(methodName = "updateUsers")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createOrUpdateUsers"), @ApiMethod(methodName = "createUsers"), @ApiMethod(methodName = "updateUsers")})
     private org.zendesk.client.v2.model.User[] users;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createOrUpdateUsers"), @ApiMethod(methodName = "createOrUpdateUsersAsync"), @ApiMethod(methodName = "updateUsers"), @ApiMethod(methodName = "updateUsersAsync")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createOrUpdateUsers"), @ApiMethod(methodName = "createOrUpdateUsersAsync"), @ApiMethod(methodName = "updateUsers"), @ApiMethod(methodName = "updateUsersAsync")})
     private java.util.List<org.zendesk.client.v2.model.User> usersList;
     @UriParam
-    @ApiParam(apiMethods = {@ApiMethod(methodName = "createDynamicContentItemVariant"), @ApiMethod(methodName = "deleteDynamicContentItemVariant"), @ApiMethod(methodName = "updateDynamicContentItemVariant")})
+    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "createDynamicContentItemVariant"), @ApiMethod(methodName = "deleteDynamicContentItemVariant"), @ApiMethod(methodName = "updateDynamicContentItemVariant")})
     private org.zendesk.client.v2.model.dynamic.DynamicContentItemVariant variant;
 
     public org.zendesk.client.v2.model.hc.Article getArticle() {
diff --git a/components/camel-zendesk/src/generated/resources/org/apache/camel/component/zendesk/zendesk.json b/components/camel-zendesk/src/generated/resources/org/apache/camel/component/zendesk/zendesk.json
index 83b08f1..f48589b 100644
--- a/components/camel-zendesk/src/generated/resources/org/apache/camel/component/zendesk/zendesk.json
+++ b/components/camel-zendesk/src/generated/resources/org/apache/camel/component/zendesk/zendesk.json
@@ -69,6 +69,6 @@
     "DEFAULT": { "methods": { "addTagToOrganisations": { "description": "", "signatures": [ "java.util.List<String> addTagToOrganisations(long id, String[] tags)" ] }, "addTagToTicket": { "description": "", "signatures": [ "java.util.List<String> addTagToTicket(long id, String[] tags)" ] }, "addTagToTopics": { "description": "", "signatures": [ "java.util.List<String> addTagToTopics(long id, String[] tags)" ] }, "associateAttachmentsToArticle": { "description": "", "signatures": [ "void  [...]
   },
   "apiProperties": {
-    "DEFAULT": { "methods": { "addTagToOrganisations": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Long", "deprecated": false, "secret": false, "description": "" }, "tags": { "kind": "parameter", "displayName": "Tags", "group": "common", "label": "", "required": false, "type": "array", "javaType": "java.lang.String[]", "deprecated": false, "secret": false, "description": " [...]
+    "DEFAULT": { "methods": { "addTagToOrganisations": { "properties": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Long", "deprecated": false, "secret": false, "description": "", "optional": false }, "tags": { "kind": "parameter", "displayName": "Tags", "group": "common", "label": "", "required": false, "type": "array", "javaType": "java.lang.String[]", "deprecated": false, "secret": fals [...]
   }
 }
diff --git a/components/camel-zendesk/src/main/docs/zendesk-component.adoc b/components/camel-zendesk/src/main/docs/zendesk-component.adoc
index 5b58633..908e9bc 100644
--- a/components/camel-zendesk/src/main/docs/zendesk-component.adoc
+++ b/components/camel-zendesk/src/main/docs/zendesk-component.adoc
@@ -990,379 +990,377 @@ The DEFAULT API method(s) has the following set of parameters listed in the tabl
 [width="100%",cols="2,2,4,2",options="header"]
 |===
 | Method | Parameter | Description | Type
-| addTagToOrganisations | *id* |  | Long
-| addTagToOrganisations | *tags* |  | String[]
-| addTagToTicket | *id* |  | Long
-| addTagToTicket | *tags* |  | String[]
-| addTagToTopics | *id* |  | Long
-| addTagToTopics | *tags* |  | String[]
-| associateAttachmentsToArticle | *attachments* |  | List
-| associateAttachmentsToArticle | *idArticle* |  | String
-| changeUserPassword | *newPassword* |  | String
-| changeUserPassword | *oldPassword* |  | String
-| changeUserPassword | *user* |  | User
-| createArticle | *article* |  | Article
-| createArticle | *notifySubscribers* |  | Boolean
-| createArticleTranslation | *articleId* |  | Long
-| createArticleTranslation | *translation* |  | Translation
-| createAutomation | *automation* |  | Automation
-| createCategory | *category* |  | Category
-| createCategoryTranslation | *categoryId* |  | Long
-| createCategoryTranslation | *translation* |  | Translation
-| createComment | *comment* |  | Comment
-| createComment | *ticketId* |  | Long
-| createDynamicContentItem | *item* |  | DynamicContentItem
-| createDynamicContentItemVariant | *itemId* |  | Long
-| createDynamicContentItemVariant | *variant* |  | DynamicContentItemVariant
-| createForum | *forum* |  | Forum
-| createGroup | *group* |  | Group
-| createGroupMembership | *groupMembership* |  | GroupMembership
-| createGroupMembership | *user_id* |  | Long
-| createMacro | *macro* |  | Macro
-| createOrUpdateUser | *user* |  | User
-| createOrUpdateUsers | *users* |  | User[]
-| createOrUpdateUsers | *usersList* |  | List
-| createOrUpdateUsersAsync | *usersList* |  | List
-| createOrganization | *organization* |  | Organization
-| createOrganizationMembership | *organizationMembership* |  | OrganizationMembership
-| createOrganizationMembership | *user_id* |  | Long
-| createOrganizationMemberships | *organizationMembershipList* |  | List
-| createOrganizationMemberships | *organizationMemberships* |  | OrganizationMembership[]
-| createOrganizationMembershipsAsync | *organizationMembershipList* |  | List
-| createOrganizations | *organizationList* |  | List
-| createOrganizations | *organizations* |  | Organization[]
-| createOrganizationsAsync | *organizationList* |  | List
-| createPermissionGroup | *permissionGroup* |  | PermissionGroup
-| createRequest | *request* |  | Request
-| createSatisfactionRating | *satisfactionRating* |  | SatisfactionRating
-| createSatisfactionRating | *ticket* |  | Ticket
-| createSatisfactionRating | *ticketId* |  | Long
-| createSection | *section* |  | Section
-| createSectionTranslation | *sectionId* |  | Long
-| createSectionTranslation | *translation* |  | Translation
-| createTarget | *target* |  | Target
-| createTicket | *ticket* |  | Ticket
-| createTicketAsync | *ticket* |  | Ticket
-| createTicketField | *field* |  | Field
-| createTicketForm | *ticketForm* |  | TicketForm
-| createTicketFromTweet | *monitorId* |  | Long
-| createTicketFromTweet | *tweetId* |  | Long
-| createTickets | *ticketList* |  | List
-| createTickets | *tickets* |  | Ticket[]
-| createTicketsAsync | *ticketList* |  | List
-| createTopic | *topic* |  | Topic
-| createTrigger | *trigger* |  | Trigger
-| createUpload | *content* |  | byte[]
-| createUpload | *contentType* |  | String
-| createUpload | *fileName* |  | String
-| createUpload | *token* |  | String
-| createUploadArticle | *articleId0* |  | Long
-| createUploadArticle | *file* |  | File
-| createUploadArticle | *inline* |  | Boolean
-| createUser | *user* |  | User
-| createUserIdentity | *identity* |  | Identity
-| createUserIdentity | *user* |  | User
-| createUserIdentity | *userId* |  | Long
-| createUserSegment | *userSegment* |  | UserSegment
-| createUsers | *userList* |  | List
-| createUsers | *users* |  | User[]
-| createUsersAsync | *userList* |  | List
-| deleteArticle | *article* |  | Article
-| deleteArticleAttachment | *articleAttachments* |  | ArticleAttachments
-| deleteArticleAttachment | *id* | Attachment identifier | Long
-| deleteAttachment | *attachment* |  | Attachment
-| deleteAttachment | *id* |  | Long
-| deleteAutomation | *automationId0* |  | Long
-| deleteCategory | *category* |  | Category
-| deleteDynamicContentItem | *item* |  | DynamicContentItem
-| deleteDynamicContentItemVariant | *itemId* |  | Long
-| deleteDynamicContentItemVariant | *variant* |  | DynamicContentItemVariant
-| deleteForum | *forum* |  | Forum
-| deleteGroup | *group* |  | Group
-| deleteGroup | *id* |  | Long
-| deleteGroupMembership | *groupMembership* |  | GroupMembership
-| deleteGroupMembership | *group_membership_id* |  | Long
-| deleteGroupMembership | *id* |  | Long
-| deleteGroupMembership | *user_id* |  | Long
-| deleteOrganization | *id* |  | Long
-| deleteOrganization | *organization* |  | Organization
-| deleteOrganizationMembership | *id* |  | Long
-| deleteOrganizationMembership | *organizationMembership* |  | OrganizationMembership
-| deleteOrganizationMembership | *organization_membership_id* |  | Long
-| deleteOrganizationMembership | *user_id* |  | Long
-| deleteOrganizationMemberships | *id* |  | Long
-| deleteOrganizationMemberships | *ids* |  | long[]
-| deletePermissionGroup | *id* |  | Long
-| deletePermissionGroup | *permissionGroup* |  | PermissionGroup
-| deleteSection | *section* |  | Section
-| deleteSuspendedTicket | *id* |  | Long
-| deleteSuspendedTicket | *suspendedTicket* |  | SuspendedTicket
-| deleteTarget | *targetId* |  | Long
-| deleteTicket | *id* |  | Long
-| deleteTicket | *ticket* |  | Ticket
-| deleteTicketField | *field* |  | Field
-| deleteTicketField | *id* |  | Long
-| deleteTickets | *id* |  | Long
-| deleteTickets | *ids* |  | long[]
-| deleteTopic | *topic* |  | Topic
-| deleteTranslation | *translation* |  | Translation
-| deleteTranslation | *translationId* |  | Long
-| deleteTrigger | *triggerId* |  | Long
-| deleteUpload | *token* |  | String
-| deleteUpload | *upload* |  | Upload
-| deleteUser | *id* |  | Long
-| deleteUser | *user* |  | User
-| deleteUserIdentity | *identity* |  | Identity
-| deleteUserIdentity | *identityId* |  | Long
-| deleteUserIdentity | *user* |  | User
-| deleteUserIdentity | *userId* |  | Long
-| deleteUserSegment | *id* |  | Long
-| deleteUserSegment | *userSegment* |  | UserSegment
-| getArticle | *id* |  | Long
-| getArticleFromSearch | *searchTerm* |  | String
-| getArticleFromSearch | *sectionId* |  | Long
-| getArticleSubscriptions | *articleId* |  | Long
-| getArticleSubscriptions | *locale* |  | String
-| getArticleTranslations | *articleId* |  | Long
-| getArticles | *category* |  | Category
-| getArticles | *locale* |  | String
-| getArticles | *section* |  | Section
-| getArticlesFromAllLabels | *labels* |  | List
-| getArticlesFromAnyLabels | *labels* |  | List
-| getArticlesFromPage | *page* |  | Integer
-| getArticlesIncrementally | *startTime* |  | Date
-| getAssignableGroupMemberships | *group_id* |  | Long
-| getAttachment | *attachment* |  | Attachment
-| getAttachment | *id* |  | Long
-| getAttachmentsFromArticle | *articleId* |  | Long
-| getAutoCompleteOrganizations | *name* |  | String
-| getAutomation | *id* |  | Long
-| getCategory | *id* |  | Long
-| getCategoryTranslations | *categoryId* |  | Long
-| getComplianceDeletionStatuses | *userId* |  | Long
-| getDeletedTickets | *sortBy* |  | String
-| getDeletedTickets | *sortOrder* |  | SortOrder
-| getDynamicContentItem | *id* |  | Long
-| getDynamicContentItemVariant | *id* |  | Long
-| getDynamicContentItemVariant | *itemId* |  | Long
-| getDynamicContentItemVariants | *item* |  | DynamicContentItem
-| getForum | *id* |  | Long
-| getForums | *category_id* |  | Long
-| getGroup | *id* |  | Long
-| getGroupMembership | *group_membership_id* |  | Long
-| getGroupMembership | *id* |  | Long
-| getGroupMembership | *user_id* |  | Long
-| getGroupMembershipByUser | *user_id* |  | Long
-| getGroupMemberships | *group_id* |  | Long
-| getGroupOrganization | *organization_membership_id* |  | Long
-| getGroupOrganization | *user_id* |  | Long
-| getGroupUsers | *id* |  | Long
-| getHolidaysForSchedule | *schedule* |  | Schedule
-| getHolidaysForSchedule | *scheduleId* |  | Long
-| getIncrementalTicketsResult | *unixEpochTime* |  | Long
-| getJobStatus | *status* |  | JobStatus
-| getJobStatusAsync | *status* |  | JobStatus
-| getJobStatuses | *statuses* |  | List
-| getJobStatusesAsync | *statuses* |  | List
-| getMacro | *macroId* |  | Long
-| getOrganization | *id* |  | Long
-| getOrganizationMembership | *id* |  | Long
-| getOrganizationMembershipByUser | *user_id* |  | Long
-| getOrganizationMembershipForUser | *id* |  | Long
-| getOrganizationMembershipForUser | *user_id* |  | Long
-| getOrganizationMembershipsForOrg | *organization_id* |  | Long
-| getOrganizationMembershipsForUser | *user_id* |  | Long
-| getOrganizationTickets | *organizationId* |  | Long
-| getOrganizationUsers | *id* |  | Long
-| getOrganizationsIncrementally | *startTime* |  | Date
-| getPermissionGroup | *id* |  | Long
-| getRequest | *id* |  | Long
-| getRequestComment | *comment* |  | Comment
-| getRequestComment | *commentId* |  | Long
-| getRequestComment | *request* |  | Request
-| getRequestComment | *requestId* |  | Long
-| getRequestComments | *id* |  | Long
-| getRequestComments | *request* |  | Request
-| getSatisfactionRating | *id* |  | Long
-| getSchedule | *schedule* |  | Schedule
-| getSchedule | *scheduleId* |  | Long
-| getSearchResults | *parameters* |  | String
-| getSearchResults | *params* |  | Map
-| getSearchResults | *query* |  | String
-| getSearchResults | *sortBy* |  | String
-| getSearchResults | *sortOrder* |  | SortOrder
-| getSearchResults | *type* |  | Class
-| getSection | *id* |  | Long
-| getSectionSubscriptions | *locale* |  | String
-| getSectionSubscriptions | *sectionId* |  | Long
-| getSectionTranslations | *sectionId* |  | Long
-| getSections | *category* |  | Category
-| getSections | *userSegment* |  | UserSegment
-| getTarget | *id* |  | Long
-| getTicket | *id* |  | Long
-| getTicketAudit | *audit* |  | Audit
-| getTicketAudit | *auditId* |  | Long
-| getTicketAudit | *id* |  | Long
-| getTicketAudit | *ticket* |  | Ticket
-| getTicketAudit | *ticketId* |  | Long
-| getTicketAudits | *ticket* |  | Ticket
-| getTicketAudits | *ticketId0* |  | Long
-| getTicketCollaborators | *id* |  | Long
-| getTicketComments | *id* |  | Long
-| getTicketComments | *order* |  | SortOrder
-| getTicketField | *id* |  | Long
-| getTicketForm | *id* |  | Long
-| getTicketIncidents | *id* |  | Long
-| getTicketMetric | *id* |  | Long
-| getTicketMetricByTicket | *id* |  | Long
-| getTickets | *id* |  | Long
-| getTickets | *ids* |  | long[]
-| getTicketsByExternalId | *externalId* |  | String
-| getTicketsByExternalId | *includeArchived* |  | Boolean
-| getTicketsFromSearch | *searchTerm* |  | String
-| getTicketsIncrementally | *endTime* |  | Date
-| getTicketsIncrementally | *startTime* |  | Date
-| getTopic | *id* |  | Long
-| getTopics | *forum_id* |  | Long
-| getTopics | *id* |  | Long
-| getTopics | *ids* |  | long[]
-| getTopics | *userSegment* |  | UserSegment
-| getTopicsByUser | *user_id* |  | Long
-| getTrigger | *id* |  | Long
-| getUser | *id* |  | Long
-| getUserCCDTickets | *userId* |  | Long
-| getUserIdentities | *user* |  | User
-| getUserIdentities | *userId* |  | Long
-| getUserIdentity | *identity* |  | Identity
-| getUserIdentity | *identityId* |  | Long
-| getUserIdentity | *user* |  | User
-| getUserIdentity | *userId* |  | Long
-| getUserRelatedInfo | *userId* |  | Long
-| getUserRequestedTickets | *userId* |  | Long
-| getUserRequests | *id* |  | Long
-| getUserRequests | *user* |  | User
-| getUserSegment | *id* |  | Long
-| getUserSegments | *id* |  | Long
-| getUserSubscriptions | *user* |  | User
-| getUserSubscriptions | *userId0* |  | Long
-| getUsersByRole | *role* |  | String
-| getUsersByRole | *roles* |  | String[]
-| getUsersIncrementally | *startTime* |  | Date
-| importTicket | *ticketImport* |  | TicketImport
-| importTopic | *topic* |  | Topic
-| lookupOrganizationsByExternalId | *externalId* |  | String
-| lookupUserByEmail | *email* |  | String
-| lookupUserByExternalId | *externalId* |  | String
-| macrosShowChangesToTicket | *macroId* |  | Long
-| macrosShowTicketAfterChanges | *macroId* |  | Long
-| macrosShowTicketAfterChanges | *ticketId* |  | Long
-| makePrivateTicketAudit | *audit* |  | Audit
-| makePrivateTicketAudit | *auditId* |  | Long
-| makePrivateTicketAudit | *id* |  | Long
-| makePrivateTicketAudit | *ticket* |  | Ticket
-| makePrivateTicketAudit | *ticketId* |  | Long
-| markTicketAsSpam | *id* |  | Long
-| markTicketAsSpam | *ticket* |  | Ticket
-| mergeUsers | *userIdThatWillBeMerged* |  | Long
-| mergeUsers | *userIdThatWillRemain* |  | Long
-| notifyApp | *json* |  | String
-| permanentlyDeleteTicket | *id* |  | Long
-| permanentlyDeleteTicket | *ticket* |  | Ticket
-| permanentlyDeleteTickets | *id* |  | Long
-| permanentlyDeleteTickets | *ids* |  | long[]
-| permanentlyDeleteUser | *id* |  | Long
-| permanentlyDeleteUser | *user* |  | User
-| queueCreateTicketAsync | *ticket* |  | Ticket
-| removeTagFromOrganisations | *id* |  | Long
-| removeTagFromOrganisations | *tags* |  | String[]
-| removeTagFromTicket | *id* |  | Long
-| removeTagFromTicket | *tags* |  | String[]
-| removeTagFromTopics | *id* |  | Long
-| removeTagFromTopics | *tags* |  | String[]
-| requestVerifyUserIdentity | *identity* |  | Identity
-| requestVerifyUserIdentity | *identityId* |  | Long
-| requestVerifyUserIdentity | *user* |  | User
-| requestVerifyUserIdentity | *userId* |  | Long
-| resetUserPassword | *id* |  | Long
-| resetUserPassword | *password* |  | String
-| resetUserPassword | *user* |  | User
-| setGroupMembershipAsDefault | *groupMembership* |  | GroupMembership
-| setGroupMembershipAsDefault | *user_id* |  | Long
-| setOrganizationMembershipAsDefault | *organizationMembership* |  | OrganizationMembership
-| setOrganizationMembershipAsDefault | *user_id* |  | Long
-| setTagOnOrganisations | *id* |  | Long
-| setTagOnOrganisations | *tags* |  | String[]
-| setTagOnTicket | *id* |  | Long
-| setTagOnTicket | *tags* |  | String[]
-| setTagOnTopics | *id* |  | Long
-| setTagOnTopics | *tags* |  | String[]
-| setUserPrimaryIdentity | *identity* |  | Identity
-| setUserPrimaryIdentity | *identityId* |  | Long
-| setUserPrimaryIdentity | *user* |  | User
-| setUserPrimaryIdentity | *userId* |  | Long
-| suspendUser | *id* |  | Long
-| trustTicketAudit | *audit* |  | Audit
-| trustTicketAudit | *auditId* |  | Long
-| trustTicketAudit | *id* |  | Long
-| trustTicketAudit | *ticket* |  | Ticket
-| trustTicketAudit | *ticketId* |  | Long
-| unsuspendUser | *id* |  | Long
-| updateArticle | *article* |  | Article
-| updateArticleTranslation | *articleId* |  | Long
-| updateArticleTranslation | *locale* |  | String
-| updateArticleTranslation | *translation* |  | Translation
-| updateAutomation | *automation* |  | Automation
-| updateAutomation | *automationId* |  | Long
-| updateCategory | *category* |  | Category
-| updateCategoryTranslation | *categoryId* |  | Long
-| updateCategoryTranslation | *locale* |  | String
-| updateCategoryTranslation | *translation* |  | Translation
-| updateDynamicContentItem | *item* |  | DynamicContentItem
-| updateDynamicContentItemVariant | *itemId* |  | Long
-| updateDynamicContentItemVariant | *variant* |  | DynamicContentItemVariant
-| updateForum | *forum* |  | Forum
-| updateGroup | *group* |  | Group
-| updateInstallation | *installationId* |  | Integer
-| updateInstallation | *json* |  | String
-| updateMacro | *macro* |  | Macro
-| updateMacro | *macroId0* |  | Long
-| updateOrganization | *organization* |  | Organization
-| updateOrganizations | *organizationList* |  | List
-| updateOrganizations | *organizations* |  | Organization[]
-| updateOrganizationsAsync | *organizationList* |  | List
-| updatePermissionGroup | *permissionGroup* |  | PermissionGroup
-| updateRequest | *request* |  | Request
-| updateSection | *section* |  | Section
-| updateSectionTranslation | *locale* |  | String
-| updateSectionTranslation | *sectionId* |  | Long
-| updateSectionTranslation | *translation* |  | Translation
-| updateTicket | *ticket* |  | Ticket
-| updateTicketField | *field* |  | Field
-| updateTickets | *ticketList* |  | List
-| updateTickets | *tickets* |  | Ticket[]
-| updateTicketsAsync | *ticketList* |  | List
-| updateTopic | *topic* |  | Topic
-| updateTrigger | *trigger* |  | Trigger
-| updateTrigger | *triggerId0* |  | Long
-| updateUser | *user* |  | User
-| updateUserIdentity | *identity* |  | Identity
-| updateUserIdentity | *user* |  | User
-| updateUserIdentity | *userId* |  | Long
-| updateUserSegment | *userSegment* |  | UserSegment
-| updateUsers | *users* |  | User[]
-| updateUsers | *usersList* |  | List
-| updateUsersAsync | *usersList* |  | List
-| verifyUserIdentity | *identity* |  | Identity
-| verifyUserIdentity | *identityId* |  | Long
-| verifyUserIdentity | *user* |  | User
-| verifyUserIdentity | *userId* |  | Long
+| addTagToOrganisations | *id* |   | Long
+| addTagToOrganisations | *tags* |   | String[]
+| addTagToTicket | *id* |   | Long
+| addTagToTicket | *tags* |   | String[]
+| addTagToTopics | *id* |   | Long
+| addTagToTopics | *tags* |   | String[]
+| associateAttachmentsToArticle | *attachments* |   | List
+| associateAttachmentsToArticle | *idArticle* |   | String
+| changeUserPassword | *newPassword* |   | String
+| changeUserPassword | *oldPassword* |   | String
+| changeUserPassword | *user* |   | User
+| createArticle | *article* |   | Article
+| createArticle | *notifySubscribers* |   | Boolean
+| createArticleTranslation | *articleId* |   | Long
+| createArticleTranslation | *translation* |   | Translation
+| createAutomation | *automation* |   | Automation
+| createCategory | *category* |   | Category
+| createCategoryTranslation | *categoryId* |   | Long
+| createCategoryTranslation | *translation* |   | Translation
+| createComment | *comment* |   | Comment
+| createComment | *ticketId* |   | Long
+| createDynamicContentItem | *item* |   | DynamicContentItem
+| createDynamicContentItemVariant | *itemId* |   | Long
+| createDynamicContentItemVariant | *variant* |   | DynamicContentItemVariant
+| createForum | *forum* |   | Forum
+| createGroup | *group* |   | Group
+| createGroupMembership | *groupMembership* |   | GroupMembership
+| createGroupMembership | *user_id* |   | Long
+| createMacro | *macro* |   | Macro
+| createOrUpdateUser | *user* |   | User
+| createOrUpdateUsers | *users* |   | User[]
+| createOrUpdateUsers | *usersList* |   | List
+| createOrUpdateUsersAsync | *usersList* |   | List
+| createOrganization | *organization* |   | Organization
+| createOrganizationMembership | *organizationMembership* |   | OrganizationMembership
+| createOrganizationMembership | *user_id* |   | Long
+| createOrganizationMemberships | *organizationMembershipList* |   | List
+| createOrganizationMemberships | *organizationMemberships* |   | OrganizationMembership[]
+| createOrganizationMembershipsAsync | *organizationMembershipList* |   | List
+| createOrganizations | *organizationList* |   | List
+| createOrganizations | *organizations* |   | Organization[]
+| createOrganizationsAsync | *organizationList* |   | List
+| createPermissionGroup | *permissionGroup* |   | PermissionGroup
+| createRequest | *request* |   | Request
+| createSatisfactionRating | *satisfactionRating* |   | SatisfactionRating
+| createSatisfactionRating | *ticket* |   | Ticket
+| createSatisfactionRating | *ticketId* |   | Long
+| createSection | *section* |   | Section
+| createSectionTranslation | *sectionId* |   | Long
+| createSectionTranslation | *translation* |   | Translation
+| createTarget | *target* |   | Target
+| createTicket | *ticket* |   | Ticket
+| createTicketAsync | *ticket* |   | Ticket
+| createTicketField | *field* |   | Field
+| createTicketForm | *ticketForm* |   | TicketForm
+| createTicketFromTweet | *monitorId* |   | Long
+| createTicketFromTweet | *tweetId* |   | Long
+| createTickets | *ticketList* |   | List
+| createTickets | *tickets* |   | Ticket[]
+| createTicketsAsync | *ticketList* |   | List
+| createTopic | *topic* |   | Topic
+| createTrigger | *trigger* |   | Trigger
+| createUpload | *content* |   | byte[]
+| createUpload | *contentType* |   | String
+| createUpload | *fileName* |   | String
+| createUpload | *token* |   | String
... 486 lines suppressed ...