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/02 09:01:12 UTC

[camel] branch master updated (259ad4f -> 4bae5af)

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

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


    from 259ad4f  Upgrade groovy maven plugin
     new a1fd1a1  CAMEL-15478: camel-package-maven-plugin: include apiProperties in component json metadata for API based components.
     new 4bae5af  CAMEL-15478: Regen

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../org/apache/camel/catalog/components/as2.json   |    4 +
 .../org/apache/camel/catalog/components/box.json   |   12 +
 .../apache/camel/catalog/components/braintree.json |   16 +
 .../org/apache/camel/catalog/components/fhir.json  |   15 +
 .../catalog/components/google-calendar-stream.json |    9 +
 .../camel/catalog/components/google-calendar.json  |    9 +
 .../camel/catalog/components/google-drive.json     |   14 +
 .../catalog/components/google-mail-stream.json     |    9 +
 .../camel/catalog/components/google-mail.json      |    9 +
 .../catalog/components/google-sheets-stream.json   |    4 +
 .../camel/catalog/components/google-sheets.json    |    4 +
 .../apache/camel/catalog/components/olingo2.json   |    3 +
 .../apache/camel/catalog/components/olingo4.json   |    3 +
 .../apache/camel/catalog/components/twilio.json    |   58 +
 .../apache/camel/catalog/components/zendesk.json   |    3 +
 .../org/apache/camel/component/as2/as2.json        |    4 +
 .../org/apache/camel/component/box/box.json        |   12 +
 .../camel/component/braintree/braintree.json       |   16 +
 .../org/apache/camel/component/fhir/fhir.json      |   15 +
 .../component/google/calendar/google-calendar.json |    9 +
 .../calendar/stream/google-calendar-stream.json    |    9 +
 .../camel/component/google/drive/google-drive.json |   14 +
 .../camel/component/google/mail/google-mail.json   |    9 +
 .../google/mail/stream/google-mail-stream.json     |    9 +
 .../component/google/sheets/google-sheets.json     |    4 +
 .../google/sheets/stream/google-sheets-stream.json |    4 +
 .../apache/camel/component/olingo2/olingo2.json    |    3 +
 .../apache/camel/component/olingo4/olingo4.json    |    3 +
 .../org/apache/camel/component/twilio/twilio.json  |   58 +
 .../apache/camel/component/zendesk/zendesk.json    |    3 +
 .../apache/camel/tooling/model/ComponentModel.java |   16 +
 .../org/apache/camel/tooling/model/JsonMapper.java |   23 +
 .../camel/tooling/model/ApiComponentModelTest.java |   70 +
 .../src/test/resources/twilio.json                 | 2708 ++++++++++++++++++++
 .../packaging/EndpointSchemaGeneratorMojo.java     |   45 +-
 35 files changed, 3205 insertions(+), 1 deletion(-)
 create mode 100644 tooling/camel-tooling-model/src/test/java/org/apache/camel/tooling/model/ApiComponentModelTest.java
 create mode 100644 tooling/camel-tooling-model/src/test/resources/twilio.json


[camel] 02/02: CAMEL-15478: Regen

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 4bae5af8db82dc4d464efebb40050f09bef6796e
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Sep 2 10:59:11 2020 +0200

    CAMEL-15478: Regen
---
 .../org/apache/camel/catalog/components/as2.json   |  4 ++
 .../org/apache/camel/catalog/components/box.json   | 12 +++++
 .../apache/camel/catalog/components/braintree.json | 16 ++++++
 .../org/apache/camel/catalog/components/fhir.json  | 15 ++++++
 .../catalog/components/google-calendar-stream.json |  9 ++++
 .../camel/catalog/components/google-calendar.json  |  9 ++++
 .../camel/catalog/components/google-drive.json     | 14 ++++++
 .../catalog/components/google-mail-stream.json     |  9 ++++
 .../camel/catalog/components/google-mail.json      |  9 ++++
 .../catalog/components/google-sheets-stream.json   |  4 ++
 .../camel/catalog/components/google-sheets.json    |  4 ++
 .../apache/camel/catalog/components/olingo2.json   |  3 ++
 .../apache/camel/catalog/components/olingo4.json   |  3 ++
 .../apache/camel/catalog/components/twilio.json    | 58 ++++++++++++++++++++++
 .../apache/camel/catalog/components/zendesk.json   |  3 ++
 .../org/apache/camel/component/as2/as2.json        |  4 ++
 .../org/apache/camel/component/box/box.json        | 12 +++++
 .../camel/component/braintree/braintree.json       | 16 ++++++
 .../org/apache/camel/component/fhir/fhir.json      | 15 ++++++
 .../component/google/calendar/google-calendar.json |  9 ++++
 .../calendar/stream/google-calendar-stream.json    |  9 ++++
 .../camel/component/google/drive/google-drive.json | 14 ++++++
 .../camel/component/google/mail/google-mail.json   |  9 ++++
 .../google/mail/stream/google-mail-stream.json     |  9 ++++
 .../component/google/sheets/google-sheets.json     |  4 ++
 .../google/sheets/stream/google-sheets-stream.json |  4 ++
 .../apache/camel/component/olingo2/olingo2.json    |  3 ++
 .../apache/camel/component/olingo4/olingo4.json    |  3 ++
 .../org/apache/camel/component/twilio/twilio.json  | 58 ++++++++++++++++++++++
 .../apache/camel/component/zendesk/zendesk.json    |  3 ++
 30 files changed, 344 insertions(+)

diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/as2.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/as2.json
index 68ca6fa..a4d6c8d 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/as2.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/as2.json
@@ -80,5 +80,9 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "client": { "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.api.AS2MessageStructure", "enum": [ "P [...]
+    "server": { "requestUriPattern": { "kind": "parameter", "displayName": "Request Uri Pattern", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } }
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/box.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/box.json
index 55f7eaf..e53c5f1 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/box.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/box.json
@@ -84,5 +84,17 @@
     "sslContextParameters": { "kind": "parameter", "displayName": "Ssl Context Parameters", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.box.BoxConfiguration", "configurationField": "configuration", "description": "To configure security using SSLContextParameters." },
     "userName": { "kind": "parameter", "displayName": "User Name", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.box.BoxConfiguration", "configurationField": "configuration", "description": "Box user name, MUST be provided" },
     "userPassword": { "kind": "parameter", "displayName": "User Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.box.BoxConfiguration", "configurationField": "configuration", "description": "Box user password, MUST be provided if authSecureStorage is not set, or returns null on first call" }
+  },
+  "apiProperties": {
+    "files": { "access": { "kind": "parameter", "displayName": "Access", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxSharedLink.Access", "enum": [ "DEFAULT", "OPEN", "COMPANY", "COLLABORATORS" ], "deprecated": false, "secret": false, "description": "The access level of the shared link" }, "check": { "kind": "parameter", "displayName": "Check", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "java.lang. [...]
+    "search": { "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, "secret": false, "description": "The search query" } },
+    "comments": { "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 comment to change" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id o [...]
+    "event-logs": { "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.Date", "deprecated": false, "secret": false, "descrip [...]
+    "collaborations": { "collaborationId": { "kind": "parameter", "displayName": "Collaboration Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of comment to change" }, "collaborator": { "kind": "parameter", "displayName": "Collaborator", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxCollaborator", "deprecated": false, " [...]
+    "tasks": { "action": { "kind": "parameter", "displayName": "Action", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxTask.Action", "enum": [ "REVIEW", "COMPLETE" ], "deprecated": false, "secret": false, "description": "The action the task assignee will be prompted to do" }, "assignTo": { "kind": "parameter", "displayName": "Assign To", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxUser [...]
+    "events": { "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": { "description": { "kind": "parameter", "displayName": "Description", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The description of the new group" }, "externalSyncIdentifier": { "kind": "parameter", "displayName": "External Sync Identifier", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "s [...]
+    "users": { "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" }, "emailAliasId": { "kind": "parameter", "displayName": "Email Alias Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": [...]
+    "folders": { "access": { "kind": "parameter", "displayName": "Access", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxSharedLink.Access", "enum": [ "DEFAULT", "OPEN", "COMPANY", "COLLABORATORS" ], "deprecated": false, "secret": false, "description": "The access level of the shared link" }, "destinationFolderId": { "kind": "parameter", "displayName": "Destination Folder Id", "group": "common", "label": "", "required": false, "type": "s [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/braintree.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/braintree.json
index c093e96..da0ee1f 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/braintree.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/braintree.json
@@ -65,5 +65,21 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.braintree.BraintreeConfiguration", "configurationField": "configuration", "description": "The access token granted by a merchant to another in order to process transactions on their behalf. Used in place of environment, m [...]
     "privateKey": { "kind": "parameter", "displayName": "Private Key", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.braintree.BraintreeConfiguration", "configurationField": "configuration", "description": "The private key provided by Braintree." },
     "publicKey": { "kind": "parameter", "displayName": "Public Key", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.braintree.BraintreeConfiguration", "configurationField": "configuration", "description": "The public key provided by Braintree." }
+  },
+  "apiProperties": {
+    "paymentMethodNonce": { "paymentMethodNonce": { "kind": "parameter", "displayName": "Payment Method Nonce", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "paymentMethodToken": { "kind": "parameter", "displayName": "Payment Method Token", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": fals [...]
+    "documentUpload": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.DocumentUploadRequest", "deprecated": false, "secret": false, "description": "" } },
+    "subscription": { "amount": { "kind": "parameter", "displayName": "Amount", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.math.BigDecimal", "deprecated": false, "secret": false, "description": "" }, "customerId": { "kind": "parameter", "displayName": "Customer Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "para [...]
+    "dispute": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The content of the text evidence for the dispute" }, "disputeId": { "kind": "parameter", "displayName": "Dispute Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "de [...]
+    "settlementBatchSummary": { "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.Calendar", "deprecated": false, "secret": false, [...]
+    "address": { "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" }, "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" }, "request": { [...]
+    "webhookNotification": { "challenge": { "kind": "parameter", "displayName": "Challenge", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "payload": { "kind": "parameter", "displayName": "Payload", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "signature": { "kin [...]
+    "creditCardVerification": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "query": { "kind": "parameter", "displayName": "Query", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.CreditCardVerificationSearchRequest", "deprecated": false, "secret": false, "description":  [...]
+    "transaction": { "amount": { "kind": "parameter", "displayName": "Amount", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.math.BigDecimal", "deprecated": false, "secret": false, "description": "" }, "cloneRequest": { "kind": "parameter", "displayName": "Clone Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.TransactionCloneRequest", "deprecated": false, "secret": false, "descriptio [...]
+    "report": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.TransactionLevelFeeReportRequest", "deprecated": false, "secret": false, "description": "The request" } },
+    "paymentMethod": { "deleteRequest": { "kind": "parameter", "displayName": "Delete Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.PaymentMethodDeleteRequest", "deprecated": false, "secret": false, "description": "" }, "grantRequest": { "kind": "parameter", "displayName": "Grant Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.PaymentMethodGrantRequest", "de [...]
+    "clientToken": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.ClientTokenRequest", "deprecated": false, "secret": false, "description": "" } },
+    "merchantAccount": { "currencyRequest": { "kind": "parameter", "displayName": "Currency Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.MerchantAccountCreateForCurrencyRequest", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": fals [...]
+    "customer": { "associationFilterId": { "kind": "parameter", "displayName": "Association Filter Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the association filter to use" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false,  [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/fhir.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/fhir.json
index d7613ec..db69716 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/fhir.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/fhir.json
@@ -100,5 +100,20 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.fhir.FhirConfiguration", "configurationField": "configuration", "description": "OAuth access token" },
     "password": { "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.fhir.FhirConfiguration", "configurationField": "configuration", "description": "Username to use for basic authentication" },
     "username": { "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.fhir.FhirConfiguration", "configurationField": "configuration", "description": "Username to use for basic authentication" }
+  },
+  "apiProperties": {
+    "update": { "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": "org.hl7.fhir.instance.model.api.IIdType [...]
+    "create": { "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" }, "preferReturn": { "kind": "parameter", "displayName": "Prefer Return", "group": "common", "label": "", "required": false, "type": "object", "javaType": "ca.uhn.fhir.res [...]
+    "validate": { "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": "object", "javaType": "org.hl7.fhir.instance.mod [...]
+    "operation": { "asynchronous": { "kind": "parameter", "displayName": "Asynchronous", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "secret": false, "description": "" }, "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.Objec [...]
+    "search": { "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" }, "url": { "kind": "parameter", "displayName": "Url", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": f [...]
+    "capabilities": { "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": "" }, "type": { "kind": "parameter", "displayName": "Type", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.Class<org.hl7.fhir. [...]
+    "patch": { "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" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.hl7.fhir.instance.model.api.IIdTy [...]
+    "meta": { "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": "org.hl7.fhir.instance.model.api.IIdType", [...]
+    "history": { "count": { "kind": "parameter", "displayName": "Count", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "description": "" }, "cutoff": { "kind": "parameter", "displayName": "Cutoff", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.util.Date", "deprecated": false, "secret": false, "description": "" }, "extraParameters": { "kind": "parameter", [...]
+    "load-page": { "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": "" }, "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, ja [...]
+    "transaction": { "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", "javaType": "java.util.Map<org.apache.camel.comp [...]
+    "read": { "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": "" }, "iUrl": { "kind": "parameter", "displayName": "IUrl", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.hl7.fhir.instance.model.api.IIdTy [...]
+    "delete": { "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" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.hl7.fhir.instance.model.api.IIdT [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar-stream.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar-stream.json
index 5c7f337..6b4612d 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar-stream.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar-stream.json
@@ -73,5 +73,14 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "settings": { "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": "" }, "setting": { "kind": "parameter", "displayName": "Setting", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "descr [...]
+    "freebusy": { "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": "" } },
+    "events": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Event", "deprecated": false, "secret": false, "description": ""  [...]
+    "channels": { "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": "" } },
+    "acl": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.AclRule", "deprecated": false, "secret": false, "description": "" } [...]
+    "calendars": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Calendar", "deprecated": false, "secret": false, "description [...]
+    "list": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.CalendarListEntry", "deprecated": false, "secret": false, "descrip [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar.json
index 87753eb..a75e4bf 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-calendar.json
@@ -73,5 +73,14 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.calendar.GoogleCalendarConfiguration", "configurationField": "configuration", "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage." },
     "clientSecret": { "kind": "parameter", "displayName": "Client Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.calendar.GoogleCalendarConfiguration", "configurationField": "configuration", "description": "Client secret of the calendar application" },
     "refreshToken": { "kind": "parameter", "displayName": "Refresh Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.calendar.GoogleCalendarConfiguration", "configurationField": "configuration", "description": "OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one [...]
+  },
+  "apiProperties": {
+    "settings": { "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": "" }, "setting": { "kind": "parameter", "displayName": "Setting", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "descripti [...]
+    "freebusy": { "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": "" } },
+    "events": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Event", "deprecated": false, "secret": false, "description": "" }, " [...]
+    "channels": { "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": "" } },
+    "acl": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.AclRule", "deprecated": false, "secret": false, "description": "" }, "c [...]
+    "calendars": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Calendar", "deprecated": false, "secret": false, "description": "" } },
+    "list": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.CalendarListEntry", "deprecated": false, "secret": false, "description [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
index 1f22dfa..7fd8af1 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-drive.json
@@ -68,5 +68,19 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.drive.GoogleDriveConfiguration", "configurationField": "configuration", "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage." },
     "clientSecret": { "kind": "parameter", "displayName": "Client Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.drive.GoogleDriveConfiguration", "configurationField": "configuration", "description": "Client secret of the drive application" },
     "refreshToken": { "kind": "parameter", "displayName": "Refresh Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.drive.GoogleDriveConfiguration", "configurationField": "configuration", "description": "OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expir [...]
+  },
+  "apiProperties": {
+    "drive-channels": { "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": "" } },
+    "drive-revisions": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Revision", "deprecated": false, "secret": false, "description": "" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" },  [...]
+    "drive-replies": { "commentId": { "kind": "parameter", "displayName": "Comment Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.CommentReply", "deprecated": false, "secret": false, "description" [...]
+    "drive-permissions": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Permission", "deprecated": false, "secret": false, "description": "" }, "email": { "kind": "parameter", "displayName": "Email", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, [...]
+    "drive-parents": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.ParentReference", "deprecated": false, "secret": false, "description": "" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": " [...]
+    "drive-apps": { "appId": { "kind": "parameter", "displayName": "App Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "drive-changes": { "changeId": { "kind": "parameter", "displayName": "Change Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "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, "desc [...]
+    "drive-comments": { "commentId": { "kind": "parameter", "displayName": "Comment Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Comment", "deprecated": false, "secret": false, "description": "" [...]
+    "drive-properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Property", "deprecated": false, "secret": false, "description": "" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, [...]
+    "drive-realtime": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "mediaContent": { "kind": "parameter", "displayName": "Media Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.client.http.AbstractInputStreamContent", "deprecated": false, "secret": false, "d [...]
+    "drive-children": { "childId": { "kind": "parameter", "displayName": "Child Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.ChildReference", "deprecated": false, "secret": false, "description": [...]
+    "drive-files": { "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": "" }, "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Channel", "deprecated": false, "se [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail-stream.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail-stream.json
index ad4003f..5493a7b 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail-stream.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail-stream.json
@@ -69,5 +69,14 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "users": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.WatchRequest", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "threads": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.ModifyThreadRequest", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "u [...]
+    "drafts": { "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": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "mediaContent": { [...]
+    "labels": { "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": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind [...]
+    "history": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "attachments": { "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "messageId": { "kind": "parameter", "displayName": "Message Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": "parameter", [...]
+    "messages": { "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": "" }, "batchModifyMessagesRequest": { "kind": "parameter", "displayName": "Batch Modify Messages Request", "group": "consumer", "label": "", "required": false, "type": "ob [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail.json
index 6375d04..f801bc4 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-mail.json
@@ -65,5 +65,14 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.mail.GoogleMailConfiguration", "configurationField": "configuration", "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage." },
     "clientSecret": { "kind": "parameter", "displayName": "Client Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.mail.GoogleMailConfiguration", "configurationField": "configuration", "description": "Client secret of the mail application" },
     "refreshToken": { "kind": "parameter", "displayName": "Refresh Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.mail.GoogleMailConfiguration", "configurationField": "configuration", "description": "OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires [...]
+  },
+  "apiProperties": {
+    "users": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.WatchRequest", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "threads": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.ModifyThreadRequest", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userI [...]
+    "drafts": { "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": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "mediaContent": { "ki [...]
+    "labels": { "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": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": " [...]
+    "history": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "attachments": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "messageId": { "kind": "parameter", "displayName": "Message Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": "parameter", "di [...]
+    "messages": { "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": "" }, "batchModifyMessagesRequest": { "kind": "parameter", "displayName": "Batch Modify Messages Request", "group": "common", "label": "", "required": false, "type": "object [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets-stream.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets-stream.json
index a6ddaf3..d8de946 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets-stream.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets-stream.json
@@ -78,5 +78,9 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "spreadsheets": { "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" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "c [...]
+    "data": { "batchClearValuesRequest": { "kind": "parameter", "displayName": "Batch Clear Values Request", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.sheets.v4.model.BatchClearValuesRequest", "deprecated": false, "secret": false, "description": "The" }, "batchGetValuesByDataFilterRequest": { "kind": "parameter", "displayName": "Batch Get Values By Data Filter Request", "group": "consumer", "label": "", "required": false,  [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets.json
index 9db4318..7373476 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/google-sheets.json
@@ -66,5 +66,9 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.sheets.GoogleSheetsConfiguration", "configurationField": "configuration", "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage." },
     "clientSecret": { "kind": "parameter", "displayName": "Client Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.sheets.GoogleSheetsConfiguration", "configurationField": "configuration", "description": "Client secret of the sheets application" },
     "refreshToken": { "kind": "parameter", "displayName": "Refresh Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.sheets.GoogleSheetsConfiguration", "configurationField": "configuration", "description": "OAuth 2 refresh token. Using this, the Google Sheets component can obtain a new accessToken whenever the current one expir [...]
+  },
+  "apiProperties": {
+    "spreadsheets": { "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" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.g [...]
+    "data": { "batchClearValuesRequest": { "kind": "parameter", "displayName": "Batch Clear Values Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.sheets.v4.model.BatchClearValuesRequest", "deprecated": false, "secret": false, "description": "The" }, "batchGetValuesByDataFilterRequest": { "kind": "parameter", "displayName": "Batch Get Values By Data Filter Request", "group": "common", "label": "", "required": false, "typ [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo2.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo2.json
index a9fbef9..bffd8ff 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo2.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo2.json
@@ -81,5 +81,8 @@
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." },
     "sslContextParameters": { "kind": "parameter", "displayName": "Ssl Context Parameters", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.olingo2.Olingo2Configuration", "configurationField": "configuration", "description": "To configure security using SSLContextParameters" }
+  },
+  "apiProperties": {
+    "DEFAULT": { "data": { "kind": "parameter", "displayName": "Data", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "description": "" }, "edm": { "kind": "parameter", "displayName": "Edm", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.olingo.odata2.api.edm.Edm", "deprecated": false, "secret": false, "description": "" }, "endpointHttpHeaders": { "kin [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo4.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo4.json
index 87ecefe..9346ebf 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo4.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/olingo4.json
@@ -77,5 +77,8 @@
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." },
     "sslContextParameters": { "kind": "parameter", "displayName": "Ssl Context Parameters", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.olingo4.Olingo4Configuration", "configurationField": "configuration", "description": "To configure security using SSLContextParameters" }
+  },
+  "apiProperties": {
+    "DEFAULT": { "data": { "kind": "parameter", "displayName": "Data", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "description": "" }, "edm": { "kind": "parameter", "displayName": "Edm", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.olingo.commons.api.edm.Edm", "deprecated": false, "secret": false, "description": "" }, "endpointHttpHeaders": { "ki [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twilio.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twilio.json
index 0d0ba9d..a75d452 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twilio.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/twilio.json
@@ -58,5 +58,63 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "recording-add-on-result-payload": { "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": "", "required": false, "type": "string", " [...]
+    "usage-record-today": { "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": { "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", "label": "", "required": false, "type": "stri [...]
+    "call-recording": { "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", "javaType": "java.lang.String", "deprecat [...]
+    "queue-member": { "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": "string", "javaType": "java.lang.String", "de [...]
+    "usage-trigger": { "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.lang.String", "deprecated": false, "secret" [...]
+    "usage-record-last-month": { "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": { "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": { "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": false, "type": "string", "javaType": "ja [...]
+    "message": { "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": "com.twilio.type.PhoneNumber", "deprecated": [...]
+    "call-feedback-summary": { "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": "string", "javaType": "java.lang.String", "depre [...]
+    "sip-credential-list-credential": { "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": "string", "javaType": "java.lang.String", "dep [...]
+    "new-key": { "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": { "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", "javaType": "java.lang.String", "deprecated": f [...]
+    "call-notification": { "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": "string", "javaType": "java.lang.String", " [...]
+    "validation-request": { "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": "object", "javaType": "com.twilio.type.Phone [...]
+    "usage-record-yesterday": { "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": { "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": { "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": { "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", "javaType": "java.lang.String", "deprecated":  [...]
+    "usage-record-daily": { "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": { "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" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false,  [...]
+    "usage-record": { "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": { "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", "label": "", "required": false, "type": "str [...]
+    "conference-participant": { "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": "", "required": false, "type": "string" [...]
+    "recording-add-on-result": { "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": false, "type": "string", "javaType": "ja [...]
+    "notification": { "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", "javaType": "java.lang.String", "deprecated": f [...]
+    "sip-domain-ip-access-control-list-mapping": { "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", "group": "common", "label": "", "required": [...]
+    "sip-domain": { "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": "java.lang.String", "deprecated": false [...]
+    "address": { "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, "secret": false, "description": "The name [...]
+    "message-media": { "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, "type": "string", "javaType": "java.lang.Stri [...]
+    "sip-ip-access-control-list-ip-address": { "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": "", "required": false, "type": "string", "j [...]
+    "available-phone-number-country": { "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", "label": "", "required": false, "type": "s [...]
+    "usage-record-yearly": { "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": { "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.String", "deprecated": false, "secret": fals [...]
+    "transcription": { "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": "java.lang.String", "deprecated" [...]
+    "sip-domain-credential-list-mapping": { "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": "common", "label": "", "required": false, "t [...]
+    "call-feedback": { "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": "java.lang.String", "deprecated": false [...]
+    "key": { "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": "java.lang.String", "deprecated": false, " [...]
+    "incoming-phone-number-toll-free": { "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": "object", "javaType": "com.twilio.t [...]
+    "token": { "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": { "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", "javaType": "java.lang.String", "deprecated":  [...]
+    "available-phone-number-country-toll-free": { "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", "label": "", "required": false, "type": " [...]
+    "usage-record-monthly": { "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": { "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": "string", "javaType": "java.lang.String", "de [...]
+    "connect-app": { "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", "javaType": "java.lang.String", "deprecated": fa [...]
+    "address-dependent-phone-number": { "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": false, "type": "string", "javaType": "j [...]
+    "signing-key": { "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": false, "secret": false, "description": "The  [...]
+    "outgoing-caller-id": { "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": "java.lang.String", "deprec [...]
+    "call": { "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.twilio.type.Endpoint", "deprecated": false [...]
+    "incoming-phone-number-local": { "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": "object", "javaType": "com.twilio.type. [...]
+    "message-feedback": { "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": "string", "javaType": "java.lang.String", " [...]
+    "recording": { "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": "java.lang.String", "deprecated": fa [...]
+    "incoming-phone-number-mobile": { "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": "object", "javaType": "com.twilio.type [...]
+    "account": { "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" } },
+    "sip-credential-list": { "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": "java.lang.String", "deprecated": false, "se [...]
   }
 }
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/zendesk.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/zendesk.json
index 32061cd..68a0120 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/zendesk.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/zendesk.json
@@ -64,5 +64,8 @@
     "password": { "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.zendesk.ZendeskConfiguration", "configurationField": "configuration", "description": "The password." },
     "token": { "kind": "parameter", "displayName": "Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.zendesk.ZendeskConfiguration", "configurationField": "configuration", "description": "The security token." },
     "username": { "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.zendesk.ZendeskConfiguration", "configurationField": "configuration", "description": "The user name." }
+  },
+  "apiProperties": {
+    "DEFAULT": { "article": { "kind": "parameter", "displayName": "Article", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.zendesk.client.v2.model.hc.Article", "deprecated": false, "secret": false, "description": "" }, "articleAttachments": { "kind": "parameter", "displayName": "Article Attachments", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.zendesk.client.v2.model.hc.ArticleAttachments", "deprecated": fa [...]
   }
 }
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 68ca6fa..a4d6c8d 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
@@ -80,5 +80,9 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "client": { "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.api.AS2MessageStructure", "enum": [ "P [...]
+    "server": { "requestUriPattern": { "kind": "parameter", "displayName": "Request Uri Pattern", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } }
   }
 }
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 55f7eaf..e53c5f1 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
@@ -84,5 +84,17 @@
     "sslContextParameters": { "kind": "parameter", "displayName": "Ssl Context Parameters", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.box.BoxConfiguration", "configurationField": "configuration", "description": "To configure security using SSLContextParameters." },
     "userName": { "kind": "parameter", "displayName": "User Name", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.box.BoxConfiguration", "configurationField": "configuration", "description": "Box user name, MUST be provided" },
     "userPassword": { "kind": "parameter", "displayName": "User Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.box.BoxConfiguration", "configurationField": "configuration", "description": "Box user password, MUST be provided if authSecureStorage is not set, or returns null on first call" }
+  },
+  "apiProperties": {
+    "files": { "access": { "kind": "parameter", "displayName": "Access", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxSharedLink.Access", "enum": [ "DEFAULT", "OPEN", "COMPANY", "COLLABORATORS" ], "deprecated": false, "secret": false, "description": "The access level of the shared link" }, "check": { "kind": "parameter", "displayName": "Check", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "java.lang. [...]
+    "search": { "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, "secret": false, "description": "The search query" } },
+    "comments": { "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 comment to change" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id o [...]
+    "event-logs": { "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.Date", "deprecated": false, "secret": false, "descrip [...]
+    "collaborations": { "collaborationId": { "kind": "parameter", "displayName": "Collaboration Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of comment to change" }, "collaborator": { "kind": "parameter", "displayName": "Collaborator", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxCollaborator", "deprecated": false, " [...]
+    "tasks": { "action": { "kind": "parameter", "displayName": "Action", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxTask.Action", "enum": [ "REVIEW", "COMPLETE" ], "deprecated": false, "secret": false, "description": "The action the task assignee will be prompted to do" }, "assignTo": { "kind": "parameter", "displayName": "Assign To", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxUser [...]
+    "events": { "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": { "description": { "kind": "parameter", "displayName": "Description", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The description of the new group" }, "externalSyncIdentifier": { "kind": "parameter", "displayName": "External Sync Identifier", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "s [...]
+    "users": { "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" }, "emailAliasId": { "kind": "parameter", "displayName": "Email Alias Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": [...]
+    "folders": { "access": { "kind": "parameter", "displayName": "Access", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.box.sdk.BoxSharedLink.Access", "enum": [ "DEFAULT", "OPEN", "COMPANY", "COLLABORATORS" ], "deprecated": false, "secret": false, "description": "The access level of the shared link" }, "destinationFolderId": { "kind": "parameter", "displayName": "Destination Folder Id", "group": "common", "label": "", "required": false, "type": "s [...]
   }
 }
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 c093e96..da0ee1f 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
@@ -65,5 +65,21 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.braintree.BraintreeConfiguration", "configurationField": "configuration", "description": "The access token granted by a merchant to another in order to process transactions on their behalf. Used in place of environment, m [...]
     "privateKey": { "kind": "parameter", "displayName": "Private Key", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.braintree.BraintreeConfiguration", "configurationField": "configuration", "description": "The private key provided by Braintree." },
     "publicKey": { "kind": "parameter", "displayName": "Public Key", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.braintree.BraintreeConfiguration", "configurationField": "configuration", "description": "The public key provided by Braintree." }
+  },
+  "apiProperties": {
+    "paymentMethodNonce": { "paymentMethodNonce": { "kind": "parameter", "displayName": "Payment Method Nonce", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "paymentMethodToken": { "kind": "parameter", "displayName": "Payment Method Token", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": fals [...]
+    "documentUpload": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.DocumentUploadRequest", "deprecated": false, "secret": false, "description": "" } },
+    "subscription": { "amount": { "kind": "parameter", "displayName": "Amount", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.math.BigDecimal", "deprecated": false, "secret": false, "description": "" }, "customerId": { "kind": "parameter", "displayName": "Customer Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "para [...]
+    "dispute": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The content of the text evidence for the dispute" }, "disputeId": { "kind": "parameter", "displayName": "Dispute Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "de [...]
+    "settlementBatchSummary": { "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.Calendar", "deprecated": false, "secret": false, [...]
+    "address": { "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" }, "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" }, "request": { [...]
+    "webhookNotification": { "challenge": { "kind": "parameter", "displayName": "Challenge", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "payload": { "kind": "parameter", "displayName": "Payload", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "signature": { "kin [...]
+    "creditCardVerification": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "query": { "kind": "parameter", "displayName": "Query", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.CreditCardVerificationSearchRequest", "deprecated": false, "secret": false, "description":  [...]
+    "transaction": { "amount": { "kind": "parameter", "displayName": "Amount", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.math.BigDecimal", "deprecated": false, "secret": false, "description": "" }, "cloneRequest": { "kind": "parameter", "displayName": "Clone Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.TransactionCloneRequest", "deprecated": false, "secret": false, "descriptio [...]
+    "report": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.TransactionLevelFeeReportRequest", "deprecated": false, "secret": false, "description": "The request" } },
+    "paymentMethod": { "deleteRequest": { "kind": "parameter", "displayName": "Delete Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.PaymentMethodDeleteRequest", "deprecated": false, "secret": false, "description": "" }, "grantRequest": { "kind": "parameter", "displayName": "Grant Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.PaymentMethodGrantRequest", "de [...]
+    "clientToken": { "request": { "kind": "parameter", "displayName": "Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.ClientTokenRequest", "deprecated": false, "secret": false, "description": "" } },
+    "merchantAccount": { "currencyRequest": { "kind": "parameter", "displayName": "Currency Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.braintreegateway.MerchantAccountCreateForCurrencyRequest", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": fals [...]
+    "customer": { "associationFilterId": { "kind": "parameter", "displayName": "Association Filter Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "The id of the association filter to use" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false,  [...]
   }
 }
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 d7613ec..db69716 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
@@ -100,5 +100,20 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.fhir.FhirConfiguration", "configurationField": "configuration", "description": "OAuth access token" },
     "password": { "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.fhir.FhirConfiguration", "configurationField": "configuration", "description": "Username to use for basic authentication" },
     "username": { "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.fhir.FhirConfiguration", "configurationField": "configuration", "description": "Username to use for basic authentication" }
+  },
+  "apiProperties": {
+    "update": { "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": "org.hl7.fhir.instance.model.api.IIdType [...]
+    "create": { "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" }, "preferReturn": { "kind": "parameter", "displayName": "Prefer Return", "group": "common", "label": "", "required": false, "type": "object", "javaType": "ca.uhn.fhir.res [...]
+    "validate": { "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": "object", "javaType": "org.hl7.fhir.instance.mod [...]
+    "operation": { "asynchronous": { "kind": "parameter", "displayName": "Asynchronous", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "secret": false, "description": "" }, "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.Objec [...]
+    "search": { "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" }, "url": { "kind": "parameter", "displayName": "Url", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": f [...]
+    "capabilities": { "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": "" }, "type": { "kind": "parameter", "displayName": "Type", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.Class<org.hl7.fhir. [...]
+    "patch": { "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" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.hl7.fhir.instance.model.api.IIdTy [...]
+    "meta": { "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": "org.hl7.fhir.instance.model.api.IIdType", [...]
+    "history": { "count": { "kind": "parameter", "displayName": "Count", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "description": "" }, "cutoff": { "kind": "parameter", "displayName": "Cutoff", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.util.Date", "deprecated": false, "secret": false, "description": "" }, "extraParameters": { "kind": "parameter", [...]
+    "load-page": { "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": "" }, "extraParameters": { "kind": "parameter", "displayName": "Extra Parameters", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, ja [...]
+    "transaction": { "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", "javaType": "java.util.Map<org.apache.camel.comp [...]
+    "read": { "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": "" }, "iUrl": { "kind": "parameter", "displayName": "IUrl", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.hl7.fhir.instance.model.api.IIdTy [...]
+    "delete": { "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" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.hl7.fhir.instance.model.api.IIdT [...]
   }
 }
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 87753eb..a75e4bf 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
@@ -73,5 +73,14 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.calendar.GoogleCalendarConfiguration", "configurationField": "configuration", "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage." },
     "clientSecret": { "kind": "parameter", "displayName": "Client Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.calendar.GoogleCalendarConfiguration", "configurationField": "configuration", "description": "Client secret of the calendar application" },
     "refreshToken": { "kind": "parameter", "displayName": "Refresh Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.calendar.GoogleCalendarConfiguration", "configurationField": "configuration", "description": "OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one [...]
+  },
+  "apiProperties": {
+    "settings": { "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": "" }, "setting": { "kind": "parameter", "displayName": "Setting", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "descripti [...]
+    "freebusy": { "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": "" } },
+    "events": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Event", "deprecated": false, "secret": false, "description": "" }, " [...]
+    "channels": { "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": "" } },
+    "acl": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.AclRule", "deprecated": false, "secret": false, "description": "" }, "c [...]
+    "calendars": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Calendar", "deprecated": false, "secret": false, "description": "" } },
+    "list": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.CalendarListEntry", "deprecated": false, "secret": false, "description [...]
   }
 }
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 5c7f337..6b4612d 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
@@ -73,5 +73,14 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "settings": { "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": "" }, "setting": { "kind": "parameter", "displayName": "Setting", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "descr [...]
+    "freebusy": { "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": "" } },
+    "events": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Event", "deprecated": false, "secret": false, "description": ""  [...]
+    "channels": { "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": "" } },
+    "acl": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.AclRule", "deprecated": false, "secret": false, "description": "" } [...]
+    "calendars": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.Calendar", "deprecated": false, "secret": false, "description [...]
+    "list": { "calendarId": { "kind": "parameter", "displayName": "Calendar Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.calendar.model.CalendarListEntry", "deprecated": false, "secret": false, "descrip [...]
   }
 }
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 1f22dfa..7fd8af1 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
@@ -68,5 +68,19 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.drive.GoogleDriveConfiguration", "configurationField": "configuration", "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage." },
     "clientSecret": { "kind": "parameter", "displayName": "Client Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.drive.GoogleDriveConfiguration", "configurationField": "configuration", "description": "Client secret of the drive application" },
     "refreshToken": { "kind": "parameter", "displayName": "Refresh Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.drive.GoogleDriveConfiguration", "configurationField": "configuration", "description": "OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expir [...]
+  },
+  "apiProperties": {
+    "drive-channels": { "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": "" } },
+    "drive-revisions": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Revision", "deprecated": false, "secret": false, "description": "" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" },  [...]
+    "drive-replies": { "commentId": { "kind": "parameter", "displayName": "Comment Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.CommentReply", "deprecated": false, "secret": false, "description" [...]
+    "drive-permissions": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Permission", "deprecated": false, "secret": false, "description": "" }, "email": { "kind": "parameter", "displayName": "Email", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, [...]
+    "drive-parents": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.ParentReference", "deprecated": false, "secret": false, "description": "" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": " [...]
+    "drive-apps": { "appId": { "kind": "parameter", "displayName": "App Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "drive-changes": { "changeId": { "kind": "parameter", "displayName": "Change Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "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, "desc [...]
+    "drive-comments": { "commentId": { "kind": "parameter", "displayName": "Comment Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Comment", "deprecated": false, "secret": false, "description": "" [...]
+    "drive-properties": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Property", "deprecated": false, "secret": false, "description": "" }, "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, [...]
+    "drive-realtime": { "fileId": { "kind": "parameter", "displayName": "File Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "mediaContent": { "kind": "parameter", "displayName": "Media Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.client.http.AbstractInputStreamContent", "deprecated": false, "secret": false, "d [...]
+    "drive-children": { "childId": { "kind": "parameter", "displayName": "Child Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.ChildReference", "deprecated": false, "secret": false, "description": [...]
+    "drive-files": { "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": "" }, "contentChannel": { "kind": "parameter", "displayName": "Content Channel", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.drive.model.Channel", "deprecated": false, "se [...]
   }
 }
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 6375d04..f801bc4 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
@@ -65,5 +65,14 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.mail.GoogleMailConfiguration", "configurationField": "configuration", "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage." },
     "clientSecret": { "kind": "parameter", "displayName": "Client Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.mail.GoogleMailConfiguration", "configurationField": "configuration", "description": "Client secret of the mail application" },
     "refreshToken": { "kind": "parameter", "displayName": "Refresh Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.mail.GoogleMailConfiguration", "configurationField": "configuration", "description": "OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires [...]
+  },
+  "apiProperties": {
+    "users": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.WatchRequest", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "threads": { "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.ModifyThreadRequest", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userI [...]
+    "drafts": { "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": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "mediaContent": { "ki [...]
+    "labels": { "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": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": " [...]
+    "history": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "attachments": { "id": { "kind": "parameter", "displayName": "Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "messageId": { "kind": "parameter", "displayName": "Message Id", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": "parameter", "di [...]
+    "messages": { "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": "" }, "batchModifyMessagesRequest": { "kind": "parameter", "displayName": "Batch Modify Messages Request", "group": "common", "label": "", "required": false, "type": "object [...]
   }
 }
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 ad4003f..5493a7b 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
@@ -69,5 +69,14 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "users": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.WatchRequest", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "threads": { "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.gmail.model.ModifyThreadRequest", "deprecated": false, "secret": false, "description": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "u [...]
+    "drafts": { "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": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "mediaContent": { [...]
+    "labels": { "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": "" }, "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind [...]
+    "history": { "userId": { "kind": "parameter", "displayName": "User Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } },
+    "attachments": { "id": { "kind": "parameter", "displayName": "Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "messageId": { "kind": "parameter", "displayName": "Message Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" }, "userId": { "kind": "parameter", [...]
+    "messages": { "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": "" }, "batchModifyMessagesRequest": { "kind": "parameter", "displayName": "Batch Modify Messages Request", "group": "consumer", "label": "", "required": false, "type": "ob [...]
   }
 }
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 9db4318..7373476 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
@@ -66,5 +66,9 @@
     "accessToken": { "kind": "parameter", "displayName": "Access Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.sheets.GoogleSheetsConfiguration", "configurationField": "configuration", "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage." },
     "clientSecret": { "kind": "parameter", "displayName": "Client Secret", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.sheets.GoogleSheetsConfiguration", "configurationField": "configuration", "description": "Client secret of the sheets application" },
     "refreshToken": { "kind": "parameter", "displayName": "Refresh Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.google.sheets.GoogleSheetsConfiguration", "configurationField": "configuration", "description": "OAuth 2 refresh token. Using this, the Google Sheets component can obtain a new accessToken whenever the current one expir [...]
+  },
+  "apiProperties": {
+    "spreadsheets": { "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" }, "content": { "kind": "parameter", "displayName": "Content", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.g [...]
+    "data": { "batchClearValuesRequest": { "kind": "parameter", "displayName": "Batch Clear Values Request", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.sheets.v4.model.BatchClearValuesRequest", "deprecated": false, "secret": false, "description": "The" }, "batchGetValuesByDataFilterRequest": { "kind": "parameter", "displayName": "Batch Get Values By Data Filter Request", "group": "common", "label": "", "required": false, "typ [...]
   }
 }
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 a6ddaf3..d8de946 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
@@ -78,5 +78,9 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "spreadsheets": { "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" }, "content": { "kind": "parameter", "displayName": "Content", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "c [...]
+    "data": { "batchClearValuesRequest": { "kind": "parameter", "displayName": "Batch Clear Values Request", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "com.google.api.services.sheets.v4.model.BatchClearValuesRequest", "deprecated": false, "secret": false, "description": "The" }, "batchGetValuesByDataFilterRequest": { "kind": "parameter", "displayName": "Batch Get Values By Data Filter Request", "group": "consumer", "label": "", "required": false,  [...]
   }
 }
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 a9fbef9..bffd8ff 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
@@ -81,5 +81,8 @@
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." },
     "sslContextParameters": { "kind": "parameter", "displayName": "Ssl Context Parameters", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.olingo2.Olingo2Configuration", "configurationField": "configuration", "description": "To configure security using SSLContextParameters" }
+  },
+  "apiProperties": {
+    "DEFAULT": { "data": { "kind": "parameter", "displayName": "Data", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "description": "" }, "edm": { "kind": "parameter", "displayName": "Edm", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.olingo.odata2.api.edm.Edm", "deprecated": false, "secret": false, "description": "" }, "endpointHttpHeaders": { "kin [...]
   }
 }
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 87ecefe..9346ebf 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
@@ -77,5 +77,8 @@
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." },
     "sslContextParameters": { "kind": "parameter", "displayName": "Ssl Context Parameters", "group": "security", "label": "security", "required": false, "type": "object", "javaType": "org.apache.camel.support.jsse.SSLContextParameters", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.olingo4.Olingo4Configuration", "configurationField": "configuration", "description": "To configure security using SSLContextParameters" }
+  },
+  "apiProperties": {
+    "DEFAULT": { "data": { "kind": "parameter", "displayName": "Data", "group": "common", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "secret": false, "description": "" }, "edm": { "kind": "parameter", "displayName": "Edm", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.olingo.commons.api.edm.Edm", "deprecated": false, "secret": false, "description": "" }, "endpointHttpHeaders": { "ki [...]
   }
 }
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 0d0ba9d..a75d452 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
@@ -58,5 +58,63 @@
     "startScheduler": { "kind": "parameter", "displayName": "Start Scheduler", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Whether the scheduler should be auto started." },
     "timeUnit": { "kind": "parameter", "displayName": "Time Unit", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "object", "javaType": "java.util.concurrent.TimeUnit", "enum": [ "NANOSECONDS", "MICROSECONDS", "MILLISECONDS", "SECONDS", "MINUTES", "HOURS", "DAYS" ], "deprecated": false, "secret": false, "defaultValue": "MILLISECONDS", "description": "Time unit for initialDelay and delay options." },
     "useFixedDelay": { "kind": "parameter", "displayName": "Use Fixed Delay", "group": "scheduler", "label": "consumer,scheduler", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details." }
+  },
+  "apiProperties": {
+    "recording-add-on-result-payload": { "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": "", "required": false, "type": "string", " [...]
+    "usage-record-today": { "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": { "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", "label": "", "required": false, "type": "stri [...]
+    "call-recording": { "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", "javaType": "java.lang.String", "deprecat [...]
+    "queue-member": { "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": "string", "javaType": "java.lang.String", "de [...]
+    "usage-trigger": { "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.lang.String", "deprecated": false, "secret" [...]
+    "usage-record-last-month": { "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": { "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": { "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": false, "type": "string", "javaType": "ja [...]
+    "message": { "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": "com.twilio.type.PhoneNumber", "deprecated": [...]
+    "call-feedback-summary": { "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": "string", "javaType": "java.lang.String", "depre [...]
+    "sip-credential-list-credential": { "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": "string", "javaType": "java.lang.String", "dep [...]
+    "new-key": { "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": { "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", "javaType": "java.lang.String", "deprecated": f [...]
+    "call-notification": { "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": "string", "javaType": "java.lang.String", " [...]
+    "validation-request": { "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": "object", "javaType": "com.twilio.type.Phone [...]
+    "usage-record-yesterday": { "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": { "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": { "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": { "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", "javaType": "java.lang.String", "deprecated":  [...]
+    "usage-record-daily": { "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": { "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" }, "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false,  [...]
+    "usage-record": { "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": { "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", "label": "", "required": false, "type": "str [...]
+    "conference-participant": { "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": "", "required": false, "type": "string" [...]
+    "recording-add-on-result": { "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": false, "type": "string", "javaType": "ja [...]
+    "notification": { "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", "javaType": "java.lang.String", "deprecated": f [...]
+    "sip-domain-ip-access-control-list-mapping": { "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", "group": "common", "label": "", "required": [...]
+    "sip-domain": { "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": "java.lang.String", "deprecated": false [...]
+    "address": { "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, "secret": false, "description": "The name [...]
+    "message-media": { "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, "type": "string", "javaType": "java.lang.Stri [...]
+    "sip-ip-access-control-list-ip-address": { "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": "", "required": false, "type": "string", "j [...]
+    "available-phone-number-country": { "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", "label": "", "required": false, "type": "s [...]
+    "usage-record-yearly": { "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": { "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.String", "deprecated": false, "secret": fals [...]
+    "transcription": { "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": "java.lang.String", "deprecated" [...]
+    "sip-domain-credential-list-mapping": { "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": "common", "label": "", "required": false, "t [...]
+    "call-feedback": { "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": "java.lang.String", "deprecated": false [...]
+    "key": { "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": "java.lang.String", "deprecated": false, " [...]
+    "incoming-phone-number-toll-free": { "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": "object", "javaType": "com.twilio.t [...]
+    "token": { "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": { "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", "javaType": "java.lang.String", "deprecated":  [...]
+    "available-phone-number-country-toll-free": { "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", "label": "", "required": false, "type": " [...]
+    "usage-record-monthly": { "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": { "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": "string", "javaType": "java.lang.String", "de [...]
+    "connect-app": { "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", "javaType": "java.lang.String", "deprecated": fa [...]
+    "address-dependent-phone-number": { "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": false, "type": "string", "javaType": "j [...]
+    "signing-key": { "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": false, "secret": false, "description": "The  [...]
+    "outgoing-caller-id": { "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": "java.lang.String", "deprec [...]
+    "call": { "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.twilio.type.Endpoint", "deprecated": false [...]
+    "incoming-phone-number-local": { "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": "object", "javaType": "com.twilio.type. [...]
+    "message-feedback": { "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": "string", "javaType": "java.lang.String", " [...]
+    "recording": { "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": "java.lang.String", "deprecated": fa [...]
+    "incoming-phone-number-mobile": { "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": "object", "javaType": "com.twilio.type [...]
+    "account": { "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" } },
+    "sip-credential-list": { "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": "java.lang.String", "deprecated": false, "se [...]
   }
 }
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 32061cd..68a0120 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
@@ -64,5 +64,8 @@
     "password": { "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.zendesk.ZendeskConfiguration", "configurationField": "configuration", "description": "The password." },
     "token": { "kind": "parameter", "displayName": "Token", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.zendesk.ZendeskConfiguration", "configurationField": "configuration", "description": "The security token." },
     "username": { "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": true, "configurationClass": "org.apache.camel.component.zendesk.ZendeskConfiguration", "configurationField": "configuration", "description": "The user name." }
+  },
+  "apiProperties": {
+    "DEFAULT": { "article": { "kind": "parameter", "displayName": "Article", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.zendesk.client.v2.model.hc.Article", "deprecated": false, "secret": false, "description": "" }, "articleAttachments": { "kind": "parameter", "displayName": "Article Attachments", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.zendesk.client.v2.model.hc.ArticleAttachments", "deprecated": fa [...]
   }
 }


[camel] 01/02: CAMEL-15478: camel-package-maven-plugin: include apiProperties in component json metadata for API based components.

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit a1fd1a1d8b2df892a33436cc339e7697e9a7f365
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Sep 2 10:11:44 2020 +0200

    CAMEL-15478: camel-package-maven-plugin: include apiProperties in component json metadata for API based components.
---
 .../apache/camel/tooling/model/ComponentModel.java |   16 +
 .../org/apache/camel/tooling/model/JsonMapper.java |   23 +
 .../camel/tooling/model/ApiComponentModelTest.java |   70 +
 .../src/test/resources/twilio.json                 | 2708 ++++++++++++++++++++
 .../packaging/EndpointSchemaGeneratorMojo.java     |   45 +-
 5 files changed, 2861 insertions(+), 1 deletion(-)

diff --git a/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/ComponentModel.java b/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/ComponentModel.java
index deb1155..7dc1c73 100644
--- a/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/ComponentModel.java
+++ b/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/ComponentModel.java
@@ -17,7 +17,9 @@
 package org.apache.camel.tooling.model;
 
 import java.util.ArrayList;
+import java.util.LinkedHashMap;
 import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 public class ComponentModel extends ArtifactModel<ComponentModel.ComponentOptionModel> {
@@ -35,6 +37,7 @@ public class ComponentModel extends ArtifactModel<ComponentModel.ComponentOption
     protected boolean lenientProperties;
     protected String verifiers;
     protected final List<EndpointOptionModel> endpointOptions = new ArrayList<>();
+    protected final Map<String, List<ApiOptionModel>> apiOptions = new LinkedHashMap<>();
 
     public ComponentModel() {
     }
@@ -168,6 +171,15 @@ public class ComponentModel extends ArtifactModel<ComponentModel.ComponentOption
                 .collect(Collectors.toList());
     }
 
+    public Map<String, List<ApiOptionModel>> getApiOptions() {
+        return apiOptions;
+    }
+
+    public void addApiOption(String apiName, ApiOptionModel option) {
+        List<ApiOptionModel> list = apiOptions.computeIfAbsent(apiName, k -> new ArrayList<>());
+        list.add(option);
+    }
+
     public static class ComponentOptionModel extends BaseOptionModel {
 
     }
@@ -175,4 +187,8 @@ public class ComponentModel extends ArtifactModel<ComponentModel.ComponentOption
     public static class EndpointOptionModel extends BaseOptionModel {
 
     }
+
+    public static class ApiOptionModel extends BaseOptionModel {
+
+    }
 }
diff --git a/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/JsonMapper.java b/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/JsonMapper.java
index 0a6ea8f..9647f22 100644
--- a/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/JsonMapper.java
+++ b/tooling/camel-tooling-model/src/main/java/org/apache/camel/tooling/model/JsonMapper.java
@@ -98,6 +98,20 @@ public final class JsonMapper {
                 model.addEndpointOption(option);
             }
         }
+        JsonObject mprap = (JsonObject) obj.get("apiProperties");
+        if (mprap != null) {
+            for (Map.Entry<String, Object> entry : mprap.entrySet()) {
+                String key = entry.getKey();
+                JsonObject mp = (JsonObject) entry.getValue();
+                mp.forEach((k, v) -> {
+                    String mk = k;
+                    JsonObject mo = (JsonObject) v;
+                    ComponentModel.ApiOptionModel option = new ComponentModel.ApiOptionModel();
+                    parseOption(mo, option, mk);
+                    model.addApiOption(key, option);
+                });
+            }
+        }
         return model;
     }
 
@@ -149,6 +163,9 @@ public final class JsonMapper {
         wrapper.put("component", obj);
         wrapper.put("componentProperties", asJsonObject(model.getComponentOptions()));
         wrapper.put("properties", asJsonObject(model.getEndpointOptions()));
+        if (!model.getApiOptions().isEmpty()) {
+            wrapper.put("apiProperties", asJsonObject(model.getApiOptions()));
+        }
         return wrapper;
     }
 
@@ -376,6 +393,12 @@ public final class JsonMapper {
         return json;
     }
 
+    public static JsonObject asJsonObject(Map<String, List<ComponentModel.ApiOptionModel>> options) {
+        JsonObject json = new JsonObject();
+        options.forEach((k, v) -> json.put(k, asJsonObject(v)));
+        return json;
+    }
+
     public static JsonObject asJsonObject(BaseOptionModel option) {
         JsonObject prop = new JsonObject();
         prop.put("kind", option.getKind());
diff --git a/tooling/camel-tooling-model/src/test/java/org/apache/camel/tooling/model/ApiComponentModelTest.java b/tooling/camel-tooling-model/src/test/java/org/apache/camel/tooling/model/ApiComponentModelTest.java
new file mode 100644
index 0000000..eb6c51f
--- /dev/null
+++ b/tooling/camel-tooling-model/src/test/java/org/apache/camel/tooling/model/ApiComponentModelTest.java
@@ -0,0 +1,70 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.tooling.model;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
+public class ApiComponentModelTest {
+
+    @Test
+    public void loadTwilioSchema() throws Exception {
+        InputStream is = ApiComponentModelTest.class.getClassLoader().getResourceAsStream("twilio.json");
+        String json = loadText(is);
+        ComponentModel model = JsonMapper.generateComponentModel(json);
+
+        Assertions.assertNotNull(model);
+        Assertions.assertTrue(model.isApi());
+        Assertions.assertEquals("apiName", model.getApiPropertyQualifier());
+        Assertions.assertEquals(56, model.getApiOptions().size());
+        Assertions.assertEquals(7, model.getApiOptions().get("call").size());
+    }
+
+    /**
+     * Loads the entire stream into memory as a String and returns it.
+     * <p/>
+     * <b>Notice:</b> This implementation appends a <tt>\n</tt> as line terminator at the of the text.
+     * <p/>
+     * Warning, don't use for crazy big streams :)
+     */
+    private static String loadText(InputStream in) throws IOException {
+        StringBuilder builder = new StringBuilder();
+        InputStreamReader isr = new InputStreamReader(in);
+        try {
+            BufferedReader reader = new BufferedReader(isr);
+            while (true) {
+                String line = reader.readLine();
+                if (line != null) {
+                    builder.append(line);
+                    builder.append("\n");
+                } else {
+                    break;
+                }
+            }
+            return builder.toString();
+        } finally {
+            isr.close();
+            in.close();
+        }
+    }
+
+}
diff --git a/tooling/camel-tooling-model/src/test/resources/twilio.json b/tooling/camel-tooling-model/src/test/resources/twilio.json
new file mode 100644
index 0000000..dd93a92
--- /dev/null
+++ b/tooling/camel-tooling-model/src/test/resources/twilio.json
@@ -0,0 +1,2708 @@
+{
+  "component": {
+    "kind": "component",
+    "name": "twilio",
+    "title": "Twilio",
+    "description": "Interact with Twilio REST APIs using Twilio Java SDK.",
+    "deprecated": false,
+    "firstVersion": "2.20.0",
+    "label": "api,messaging,cloud",
+    "javaType": "org.apache.camel.component.twilio.TwilioComponent",
+    "supportLevel": "Stable",
+    "groupId": "org.apache.camel",
+    "artifactId": "camel-twilio",
+    "version": "3.5.0-SNAPSHOT",
+    "scheme": "twilio",
+    "extendsScheme": "",
+    "syntax": "twilio:apiName\/methodName",
+    "async": false,
+    "api": true,
+    "apiPropertyQualifier": "apiName",
+    "consumerOnly": false,
+    "producerOnly": false,
+    "lenientProperties": false
+  },
+  "componentProperties": {
+    "bridgeErrorHandler": {
+      "kind": "property",
+      "displayName": "Bridge Error Handler",
+      "group": "consumer",
+      "label": "consumer",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": false,
+      "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored."
+    },
+    "lazyStartProducer": {
+      "kind": "property",
+      "displayName": "Lazy Start Producer",
+      "group": "producer",
+      "label": "producer",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": false,
+      "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the [...]
+    },
+    "basicPropertyBinding": {
+      "kind": "property",
+      "displayName": "Basic Property Binding",
+      "group": "advanced",
+      "label": "advanced",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": false,
+      "description": "Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities"
+    },
+    "configuration": {
+      "kind": "property",
+      "displayName": "Configuration",
+      "group": "advanced",
+      "label": "advanced",
+      "required": false,
+      "type": "object",
+      "javaType": "org.apache.camel.component.twilio.TwilioConfiguration",
+      "deprecated": false,
+      "secret": false,
+      "description": "To use the shared configuration"
+    },
+    "restClient": {
+      "kind": "property",
+      "displayName": "Rest Client",
+      "group": "advanced",
+      "label": "advanced",
+      "required": false,
+      "type": "object",
+      "javaType": "com.twilio.http.TwilioRestClient",
+      "deprecated": false,
+      "secret": false,
+      "description": "To use the shared REST client"
+    },
+    "accountSid": {
+      "kind": "property",
+      "displayName": "Account Sid",
+      "group": "security",
+      "label": "common,security",
+      "required": false,
+      "type": "string",
+      "javaType": "java.lang.String",
+      "deprecated": false,
+      "secret": true,
+      "description": "The account SID to use."
+    },
+    "password": {
+      "kind": "property",
+      "displayName": "Password",
+      "group": "security",
+      "label": "common,security",
+      "required": false,
+      "type": "string",
+      "javaType": "java.lang.String",
+      "deprecated": false,
+      "secret": true,
+      "description": "Auth token for the account."
+    },
+    "username": {
+      "kind": "property",
+      "displayName": "Username",
+      "group": "security",
+      "label": "common,security",
+      "required": false,
+      "type": "string",
+      "javaType": "java.lang.String",
+      "deprecated": false,
+      "secret": true,
+      "description": "The account to use."
+    }
+  },
+  "properties": {
+    "apiName": {
+      "kind": "path",
+      "displayName": "Api Name",
+      "group": "common",
+      "label": "",
+      "required": true,
+      "type": "object",
+      "javaType": "org.apache.camel.component.twilio.internal.TwilioApiName",
+      "enum": [
+        "account",
+        "address",
+        "application",
+        "available-phone-number-country",
+        "call",
+        "conference",
+        "connect-app",
+        "incoming-phone-number",
+        "key",
+        "message",
+        "new-key",
+        "new-signing-key",
+        "notification",
+        "outgoing-caller-id",
+        "queue",
+        "recording",
+        "short-code",
+        "signing-key",
+        "token",
+        "transcription",
+        "validation-request",
+        "address-dependent-phone-number",
+        "available-phone-number-country-local",
+        "available-phone-number-country-mobile",
+        "available-phone-number-country-toll-free",
+        "call-feedback",
+        "call-feedback-summary",
+        "call-notification",
+        "call-recording",
+        "conference-participant",
+        "incoming-phone-number-local",
+        "incoming-phone-number-mobile",
+        "incoming-phone-number-toll-free",
+        "message-feedback",
+        "message-media",
+        "queue-member",
+        "recording-add-on-result",
+        "recording-transcription",
+        "recording-add-on-result-payload",
+        "sip-credential-list",
+        "sip-domain",
+        "sip-ip-access-control-list",
+        "sip-credential-list-credential",
+        "sip-domain-credential-list-mapping",
+        "sip-domain-ip-access-control-list-mapping",
+        "sip-ip-access-control-list-ip-address",
+        "usage-record",
+        "usage-trigger",
+        "usage-record-all-time",
+        "usage-record-daily",
+        "usage-record-last-month",
+        "usage-record-monthly",
+        "usage-record-this-month",
+        "usage-record-today",
+        "usage-record-yearly",
+        "usage-record-yesterday"
+      ],
+      "deprecated": false,
+      "deprecationNote": "",
+      "secret": false,
+      "configurationClass": "org.apache.camel.component.twilio.TwilioConfiguration",
+      "configurationField": "configuration",
+      "description": "What kind of operation to perform"
+    },
+    "methodName": {
+      "kind": "path",
+      "displayName": "Method Name",
+      "group": "common",
+      "label": "",
+      "required": true,
+      "type": "string",
+      "javaType": "java.lang.String",
+      "enum": [
+        "create",
+        "delete",
+        "fetch",
+        "read",
+        "update"
+      ],
+      "deprecated": false,
+      "deprecationNote": "",
+      "secret": false,
+      "configurationClass": "org.apache.camel.component.twilio.TwilioConfiguration",
+      "configurationField": "configuration",
+      "description": "What sub operation to use for the selected operation"
+    },
+    "inBody": {
+      "kind": "parameter",
+      "displayName": "In Body",
+      "group": "common",
+      "label": "",
+      "required": false,
+      "type": "string",
+      "javaType": "java.lang.String",
+      "deprecated": false,
+      "secret": false,
+      "description": "Sets the name of a parameter to be passed in the exchange In Body"
+    },
+    "bridgeErrorHandler": {
+      "kind": "parameter",
+      "displayName": "Bridge Error Handler",
+      "group": "consumer",
+      "label": "consumer",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": false,
+      "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored."
+    },
+    "sendEmptyMessageWhenIdle": {
+      "kind": "parameter",
+      "displayName": "Send Empty Message When Idle",
+      "group": "consumer",
+      "label": "consumer",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": false,
+      "description": "If the polling consumer did not poll any files, you can enable this option to send an empty message (no body) instead."
+    },
+    "exceptionHandler": {
+      "kind": "parameter",
+      "displayName": "Exception Handler",
+      "group": "consumer (advanced)",
+      "label": "consumer,advanced",
+      "required": false,
+      "type": "object",
+      "javaType": "org.apache.camel.spi.ExceptionHandler",
+      "optionalPrefix": "consumer.",
+      "deprecated": false,
+      "secret": false,
+      "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored."
+    },
+    "exchangePattern": {
+      "kind": "parameter",
+      "displayName": "Exchange Pattern",
+      "group": "consumer (advanced)",
+      "label": "consumer,advanced",
+      "required": false,
+      "type": "object",
+      "javaType": "org.apache.camel.ExchangePattern",
+      "enum": [
+        "InOnly",
+        "InOut",
+        "InOptionalOut"
+      ],
+      "deprecated": false,
+      "secret": false,
+      "description": "Sets the exchange pattern when the consumer creates an exchange."
+    },
+    "pollStrategy": {
+      "kind": "parameter",
+      "displayName": "Poll Strategy",
+      "group": "consumer (advanced)",
+      "label": "consumer,advanced",
+      "required": false,
+      "type": "object",
+      "javaType": "org.apache.camel.spi.PollingConsumerPollStrategy",
+      "deprecated": false,
+      "secret": false,
+      "description": "A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing you to provide your custom implementation to control error handling usually occurred during the poll operation before an Exchange have been created and being routed in Camel."
+    },
+    "lazyStartProducer": {
+      "kind": "parameter",
+      "displayName": "Lazy Start Producer",
+      "group": "producer",
+      "label": "producer",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": false,
+      "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the [...]
+    },
+    "basicPropertyBinding": {
+      "kind": "parameter",
+      "displayName": "Basic Property Binding",
+      "group": "advanced",
+      "label": "advanced",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": false,
+      "description": "Whether the endpoint should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities"
+    },
+    "synchronous": {
+      "kind": "parameter",
+      "displayName": "Synchronous",
+      "group": "advanced",
+      "label": "advanced",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "false",
+      "description": "Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported)."
+    },
+    "backoffErrorThreshold": {
+      "kind": "parameter",
+      "displayName": "Backoff Error Threshold",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "integer",
+      "javaType": "int",
+      "deprecated": false,
+      "secret": false,
+      "description": "The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in."
+    },
+    "backoffIdleThreshold": {
+      "kind": "parameter",
+      "displayName": "Backoff Idle Threshold",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "integer",
+      "javaType": "int",
+      "deprecated": false,
+      "secret": false,
+      "description": "The number of subsequent idle polls that should happen before the backoffMultipler should kick-in."
+    },
+    "backoffMultiplier": {
+      "kind": "parameter",
+      "displayName": "Backoff Multiplier",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "integer",
+      "javaType": "int",
+      "deprecated": false,
+      "secret": false,
+      "description": "To let the scheduled polling consumer backoff if there has been a number of subsequent idles\/errors in a row. The multiplier is then the number of polls that will be skipped before the next actual attempt is happening again. When this option is in use then backoffIdleThreshold and\/or backoffErrorThreshold must also be configured."
+    },
+    "delay": {
+      "kind": "parameter",
+      "displayName": "Delay",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "integer",
+      "javaType": "long",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "500",
+      "description": "Milliseconds before the next poll."
+    },
+    "greedy": {
+      "kind": "parameter",
+      "displayName": "Greedy",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": false,
+      "description": "If greedy is enabled, then the ScheduledPollConsumer will run immediately again, if the previous run polled 1 or more messages."
+    },
+    "initialDelay": {
+      "kind": "parameter",
+      "displayName": "Initial Delay",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "integer",
+      "javaType": "long",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "1000",
+      "description": "Milliseconds before the first poll starts."
+    },
+    "repeatCount": {
+      "kind": "parameter",
+      "displayName": "Repeat Count",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "integer",
+      "javaType": "long",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "0",
+      "description": "Specifies a maximum limit of number of fires. So if you set it to 1, the scheduler will only fire once. If you set it to 5, it will only fire five times. A value of zero or negative means fire forever."
+    },
+    "runLoggingLevel": {
+      "kind": "parameter",
+      "displayName": "Run Logging Level",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "object",
+      "javaType": "org.apache.camel.LoggingLevel",
+      "enum": [
+        "TRACE",
+        "DEBUG",
+        "INFO",
+        "WARN",
+        "ERROR",
+        "OFF"
+      ],
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "TRACE",
+      "description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that."
+    },
+    "scheduledExecutorService": {
+      "kind": "parameter",
+      "displayName": "Scheduled Executor Service",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "object",
+      "javaType": "java.util.concurrent.ScheduledExecutorService",
+      "deprecated": false,
+      "secret": false,
+      "description": "Allows for configuring a custom\/shared thread pool to use for the consumer. By default each consumer has its own single threaded thread pool."
+    },
+    "scheduler": {
+      "kind": "parameter",
+      "displayName": "Scheduler",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "object",
+      "javaType": "java.lang.Object",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "none",
+      "description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler"
+    },
+    "schedulerProperties": {
+      "kind": "parameter",
+      "displayName": "Scheduler Properties",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "object",
+      "javaType": "java.util.Map<java.lang.String, java.lang.Object>",
+      "prefix": "scheduler.",
+      "multiValue": true,
+      "deprecated": false,
+      "secret": false,
+      "description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler."
+    },
+    "startScheduler": {
+      "kind": "parameter",
+      "displayName": "Start Scheduler",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "true",
+      "description": "Whether the scheduler should be auto started."
+    },
+    "timeUnit": {
+      "kind": "parameter",
+      "displayName": "Time Unit",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "object",
+      "javaType": "java.util.concurrent.TimeUnit",
+      "enum": [
+        "NANOSECONDS",
+        "MICROSECONDS",
+        "MILLISECONDS",
+        "SECONDS",
+        "MINUTES",
+        "HOURS",
+        "DAYS"
+      ],
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "MILLISECONDS",
+      "description": "Time unit for initialDelay and delay options."
+    },
+    "useFixedDelay": {
+      "kind": "parameter",
+      "displayName": "Use Fixed Delay",
+      "group": "scheduler",
+      "label": "consumer,scheduler",
+      "required": false,
+      "type": "boolean",
+      "javaType": "boolean",
+      "deprecated": false,
+      "secret": false,
+      "defaultValue": "true",
+      "description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details."
+    }
+  },
+  "apiProperties": {
+    "recording-add-on-result-payload": {
+      "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": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the AddOnResult to which the payloads to delete belongs"
+      },
+      "pathReferenceSid": {
+        "kind": "parameter",
+        "displayName": "Path Reference Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the recording to which the AddOnResult resource that contains the payloads to delete belongs"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "usage-record-today": {
+      "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": {
+      "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",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The ISO Country code of the country from which to read phone numbers"
+      }
+    },
+    "call-recording": {
+      "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",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Call to associate the resource with"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      },
+      "status": {
+        "kind": "parameter",
+        "displayName": "Status",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "object",
+        "javaType": "com.twilio.rest.api.v2010.account.call.Recording.Status",
+        "enum": [
+          "in-progress",
+          "paused",
+          "stopped",
+          "processing",
+          "completed",
+          "absent"
+        ],
+        "deprecated": false,
+        "secret": false,
+        "description": "The new status of the recording"
+      }
+    },
+    "queue-member": {
+      "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": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The Call SID of the resource(s) to fetch"
+      },
+      "pathQueueSid": {
+        "kind": "parameter",
+        "displayName": "Path Queue Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Queue in which to find the members"
+      },
+      "url": {
+        "kind": "parameter",
+        "displayName": "Url",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.net.URI",
+        "deprecated": false,
+        "secret": false,
+        "description": "The absolute URL of the Queue resource"
+      }
+    },
+    "usage-trigger": {
+      "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.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Account that will create the resource"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      },
+      "triggerValue": {
+        "kind": "parameter",
+        "displayName": "Trigger Value",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The usage value at which the trigger should fire"
+      },
+      "usageCategory": {
+        "kind": "parameter",
+        "displayName": "Usage Category",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "object",
+        "javaType": "com.twilio.rest.api.v2010.account.usage.Trigger.UsageCategory",
+        "enum": [
+          "agent-conference",
+          "answering-machine-detection",
+          "authy-authentications",
+          "authy-calls-outbound",
+          "authy-monthly-fees",
+          "authy-phone-intelligence",
+          "authy-phone-verifications",
+          "authy-sms-outbound",
+          "call-progess-events",
+          "calleridlookups",
+          "calls",
+          "calls-client",
+          "calls-globalconference",
+          "calls-inbound",
+          "calls-inbound-local",
+          "calls-inbound-mobile",
+          "calls-inbound-tollfree",
+          "calls-outbound",
+          "calls-pay-verb-transactions",
+          "calls-recordings",
+          "calls-sip",
+          "calls-sip-inbound",
+          "calls-sip-outbound",
+          "carrier-lookups",
+          "conversations",
+          "conversations-api-requests",
+          "conversations-conversation-events",
+          "conversations-endpoint-connectivity",
+          "conversations-events",
+          "conversations-participant-events",
+          "conversations-participants",
+          "cps",
+          "fraud-lookups",
+          "group-rooms",
+          "group-rooms-data-track",
+          "group-rooms-encrypted-media-recorded",
+          "group-rooms-media-downloaded",
+          "group-rooms-media-recorded",
+          "group-rooms-media-routed",
+          "group-rooms-media-stored",
+          "group-rooms-participant-minutes",
+          "group-rooms-recorded-minutes",
+          "ip-messaging",
+          "ip-messaging-commands",
+          "ip-messaging-data-storage",
+          "ip-messaging-data-transfer",
+          "ip-messaging-endpoint-connectivity",
+          "lookups",
+          "marketplace",
+          "marketplace-algorithmia-named-entity-recognition",
+          "marketplace-cadence-transcription",
+          "marketplace-cadence-translation",
+          "marketplace-capio-speech-to-text",
+          "marketplace-convriza-ababa",
+          "marketplace-deepgram-phrase-detector",
+          "marketplace-digital-segment-business-info",
+          "marketplace-facebook-offline-conversions",
+          "marketplace-google-speech-to-text",
+          "marketplace-ibm-watson-message-insights",
+          "marketplace-ibm-watson-message-sentiment",
+          "marketplace-ibm-watson-recording-analysis",
+          "marketplace-ibm-watson-tone-analyzer",
+          "marketplace-icehook-systems-scout",
+          "marketplace-infogroup-dataaxle-bizinfo",
+          "marketplace-keen-io-contact-center-analytics",
+          "marketplace-marchex-cleancall",
+          "marketplace-marchex-sentiment-analysis-for-sms",
+          "marketplace-marketplace-nextcaller-social-id",
+          "marketplace-mobile-commons-opt-out-classifier",
+          "marketplace-nexiwave-voicemail-to-text",
+          "marketplace-nextcaller-advanced-caller-identification",
+          "marketplace-nomorobo-spam-score",
+          "marketplace-payfone-tcpa-compliance",
+          "marketplace-remeeting-automatic-speech-recognition",
+          "marketplace-tcpa-defense-solutions-blacklist-feed",
+          "marketplace-telo-opencnam",
+          "marketplace-truecnam-true-spam",
+          "marketplace-twilio-caller-name-lookup-us",
+          "marketplace-twilio-carrier-information-lookup",
+          "marketplace-voicebase-pci",
+          "marketplace-voicebase-transcription",
+          "marketplace-voicebase-transcription-custom-vocabulary",
+          "marketplace-whitepages-pro-caller-identification",
+          "marketplace-whitepages-pro-phone-intelligence",
+          "marketplace-whitepages-pro-phone-reputation",
+          "marketplace-wolfarm-spoken-results",
+          "marketplace-wolfram-short-answer",
+          "marketplace-ytica-contact-center-reporting-analytics",
+          "mediastorage",
+          "mms",
+          "mms-inbound",
+          "mms-inbound-longcode",
+          "mms-inbound-shortcode",
+          "mms-messages-carrierfees",
+          "mms-outbound",
+          "mms-outbound-longcode",
+          "mms-outbound-shortcode",
+          "monitor-reads",
+          "monitor-storage",
+          "monitor-writes",
+          "notify",
+          "notify-actions-attempts",
+          "notify-channels",
+          "number-format-lookups",
+          "pchat",
+          "pchat-actions",
+          "pchat-aps",
+          "pchat-messages",
+          "pchat-notifications",
+          "pchat-reads",
+          "pchat-users",
+          "peer-to-peer-rooms-participant-minutes",
+          "pfax",
+          "pfax-minutes",
+          "pfax-minutes-inbound",
+          "pfax-minutes-outbound",
+          "pfax-pages",
+          "phonenumbers",
+          "phonenumbers-cps",
+          "phonenumbers-emergency",
+          "phonenumbers-local",
+          "phonenumbers-mobile",
+          "phonenumbers-setups",
+          "phonenumbers-tollfree",
+          "premiumsupport",
+          "proxy",
+          "proxy-active-sessions",
+          "pstnconnectivity",
+          "pv",
+          "pv-composition-media-downloaded",
+          "pv-composition-media-encrypted",
+          "pv-composition-media-stored",
+          "pv-composition-minutes",
+          "pv-recording-compositions",
+          "pv-room-participants",
+          "pv-room-participants-au1",
+          "pv-room-participants-br1",
+          "pv-room-participants-ie1",
+          "pv-room-participants-jp1",
+          "pv-room-participants-sg1",
+          "pv-room-participants-us1",
+          "pv-room-participants-us2",
+          "pv-rooms",
+          "pv-sip-endpoint-registrations",
+          "recordings",
+          "recordingstorage",
+          "rooms-group-bandwidth",
+          "rooms-group-minutes",
+          "rooms-peer-to-peer-minutes",
+          "shortcodes",
+          "shortcodes-customerowned",
+          "shortcodes-mms-enablement",
+          "shortcodes-mps",
+          "shortcodes-random",
+          "shortcodes-uk",
+          "shortcodes-vanity",
+          "small-group-rooms",
+          "small-group-rooms-data-track",
+          "small-group-rooms-participant-minutes",
+          "sms",
+          "sms-inbound",
+          "sms-inbound-longcode",
+          "sms-inbound-shortcode",
+          "sms-messages-carrierfees",
+          "sms-messages-features",
+          "sms-messages-features-senderid",
+          "sms-outbound",
+          "sms-outbound-content-inspection",
+          "sms-outbound-longcode",
+          "sms-outbound-shortcode",
+          "speech-recognition",
+          "studio-engagements",
+          "sync",
+          "sync-actions",
+          "sync-endpoint-hours",
+          "sync-endpoint-hours-above-daily-cap",
+          "taskrouter-tasks",
+          "totalprice",
+          "transcriptions",
+          "trunking-cps",
+          "trunking-emergency-calls",
+          "trunking-origination",
+          "trunking-origination-local",
+          "trunking-origination-mobile",
+          "trunking-origination-tollfree",
+          "trunking-recordings",
+          "trunking-secure",
+          "trunking-termination",
+          "turnmegabytes",
+          "turnmegabytes-australia",
+          "turnmegabytes-brasil",
+          "turnmegabytes-germany",
+          "turnmegabytes-india",
+          "turnmegabytes-ireland",
+          "turnmegabytes-japan",
+          "turnmegabytes-singapore",
+          "turnmegabytes-useast",
+          "turnmegabytes-uswest",
+          "twilio-interconnect",
+          "video-recordings",
+          "voice-insights",
+          "voice-insights-client-insights-on-demand-minute",
+          "voice-insights-ptsn-insights-on-demand-minute",
+          "voice-insights-sip-interface-insights-on-demand-minute",
+          "voice-insights-sip-trunking-insights-on-demand-minute",
+          "wireless",
+          "wireless-orders",
+          "wireless-orders-artwork",
+          "wireless-orders-bulk",
+          "wireless-orders-esim",
+          "wireless-orders-starter",
+          "wireless-usage",
+          "wireless-usage-commands",
+          "wireless-usage-commands-africa",
+          "wireless-usage-commands-asia",
+          "wireless-usage-commands-centralandsouthamerica",
+          "wireless-usage-commands-europe",
+          "wireless-usage-commands-home",
+          "wireless-usage-commands-northamerica",
+          "wireless-usage-commands-oceania",
+          "wireless-usage-commands-roaming",
+          "wireless-usage-data",
+          "wireless-usage-data-africa",
+          "wireless-usage-data-asia",
+          "wireless-usage-data-centralandsouthamerica",
+          "wireless-usage-data-custom-additionalmb",
+          "wireless-usage-data-custom-first5mb",
+          "wireless-usage-data-domestic-roaming",
+          "wireless-usage-data-europe",
+          "wireless-usage-data-individual-additionalgb",
+          "wireless-usage-data-individual-firstgb",
+          "wireless-usage-data-international-roaming-canada",
+          "wireless-usage-data-international-roaming-india",
+          "wireless-usage-data-international-roaming-mexico",
+          "wireless-usage-data-northamerica",
+          "wireless-usage-data-oceania",
+          "wireless-usage-data-pooled",
+          "wireless-usage-data-pooled-downlink",
+          "wireless-usage-data-pooled-uplink",
+          "wireless-usage-mrc",
+          "wireless-usage-mrc-custom",
+          "wireless-usage-mrc-individual",
+          "wireless-usage-mrc-pooled",
+          "wireless-usage-mrc-suspended",
+          "wireless-usage-sms",
+          "wireless-usage-voice"
+        ],
+        "deprecated": false,
+        "secret": false,
+        "description": "The usage category the trigger watches"
+      }
+    },
+    "usage-record-last-month": {
+      "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": {
+      "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": {
+      "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": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the recording that created the transcription to delete"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "message": {
+      "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": "com.twilio.type.PhoneNumber",
+        "deprecated": false,
+        "secret": false,
+        "description": "The phone number that initiated the message"
+      },
+      "mediaUrl": {
+        "kind": "parameter",
+        "displayName": "Media Url",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "array",
+        "javaType": "java.util.List<java.net.URI>",
+        "deprecated": false,
+        "secret": false,
+        "description": "The URL of the media to send with the message"
+      },
+      "messagingServiceSid": {
+        "kind": "parameter",
+        "displayName": "Messaging Service Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Messaging Service you want to associate with the message"
+      },
+      "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"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      },
+      "to": {
+        "kind": "parameter",
+        "displayName": "To",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "object",
+        "javaType": "com.twilio.type.PhoneNumber",
+        "deprecated": false,
+        "secret": false,
+        "description": "The destination phone number"
+      }
+    },
+    "call-feedback-summary": {
+      "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": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique sid that identifies this account"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "A string that uniquely identifies this feedback summary resource"
+      },
+      "startDate": {
+        "kind": "parameter",
+        "displayName": "Start Date",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "object",
+        "javaType": "org.joda.time.LocalDate",
+        "deprecated": false,
+        "secret": false,
+        "description": "Only include feedback given on or after this date"
+      }
+    },
+    "sip-credential-list-credential": {
+      "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": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique id of the Account that is responsible for this resource"
+      },
+      "pathCredentialListSid": {
+        "kind": "parameter",
+        "displayName": "Path Credential List Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique id that identifies the credential list to include the created credential"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique id that identifies the resource to delete"
+      },
+      "username": {
+        "kind": "parameter",
+        "displayName": "Username",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The username for this credential"
+      }
+    },
+    "new-key": {
+      "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": {
+      "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",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Account that will create the resource"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      },
+      "phoneNumber": {
+        "kind": "parameter",
+        "displayName": "Phone Number",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "object",
+        "javaType": "com.twilio.type.PhoneNumber",
+        "deprecated": false,
+        "secret": false,
+        "description": "The phone number to purchase in E.164 format"
+      }
+    },
+    "call-notification": {
+      "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": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The Call SID of the resource to fetch"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "validation-request": {
+      "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": "object",
+        "javaType": "com.twilio.type.PhoneNumber",
+        "deprecated": false,
+        "secret": false,
+        "description": "The phone number to verify in E.164 format"
+      }
+    },
+    "usage-record-yesterday": {
+      "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": {
+      "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": {
+      "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": {
+      "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",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies this resource"
+      }
+    },
+    "usage-record-daily": {
+      "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": {
+      "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"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "usage-record": {
+      "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": {
+      "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",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The ISO Country code of the country from which to read phone numbers"
+      }
+    },
+    "conference-participant": {
+      "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": "",
+        "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",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The Call SID or URL encoded label of the participant to delete"
+      },
+      "pathConferenceSid": {
+        "kind": "parameter",
+        "displayName": "Path Conference Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the participant's conference"
+      },
+      "to": {
+        "kind": "parameter",
+        "displayName": "To",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "object",
+        "javaType": "com.twilio.type.PhoneNumber",
+        "deprecated": false,
+        "secret": false,
+        "description": "The phone number, SIP address or Client identifier that received this call."
+      }
+    },
+    "recording-add-on-result": {
+      "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": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the recording to which the result to delete belongs"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource to delete"
+      }
+    },
+    "notification": {
+      "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",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "sip-domain-ip-access-control-list-mapping": {
+      "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",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique id of the Account that is responsible for this resource"
+      },
+      "pathDomainSid": {
+        "kind": "parameter",
+        "displayName": "Path Domain Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "A string that uniquely identifies the SIP Domain"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "A 34 character string that uniquely identifies the resource to delete."
+      }
+    },
+    "sip-domain": {
+      "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": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Account that will create the resource"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "address": {
+      "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,
+        "secret": false,
+        "description": "The name to associate with the new address"
+      },
+      "isoCountry": {
+        "kind": "parameter",
+        "displayName": "Iso Country",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The ISO country code of the new address"
+      },
+      "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 Address resource"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      },
+      "postalCode": {
+        "kind": "parameter",
+        "displayName": "Postal Code",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The postal code of the new address"
+      },
+      "region": {
+        "kind": "parameter",
+        "displayName": "Region",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The state or region of the new address"
+      },
+      "street": {
+        "kind": "parameter",
+        "displayName": "Street",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The number and street address of the new address"
+      }
+    },
+    "message-media": {
+      "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,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Message resource that this Media resource belongs to"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies this resource"
+      }
+    },
+    "sip-ip-access-control-list-ip-address": {
+      "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": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "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."
+      },
+      "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"
+      },
+      "pathIpAccessControlListSid": {
+        "kind": "parameter",
+        "displayName": "Path Ip Access Control List Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The IpAccessControlList Sid with which to associate the created IpAddress resource"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "A string that identifies the resource to delete"
+      }
+    },
+    "available-phone-number-country": {
+      "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",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The ISO country code of the country to fetch available phone number information about"
+      }
+    },
+    "usage-record-yearly": {
+      "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": {
+      "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.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Account that will create the resource"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies this resource"
+      }
+    },
+    "transcription": {
+      "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": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "sip-domain-credential-list-mapping": {
+      "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": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique sid that identifies this account"
+      },
+      "pathDomainSid": {
+        "kind": "parameter",
+        "displayName": "Path Domain Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "A string that identifies the SIP Domain for which the CredentialList resource will be mapped"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "A string that identifies the resource to delete"
+      }
+    },
+    "call-feedback": {
+      "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": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The call sid that uniquely identifies the call"
+      },
+      "qualityScore": {
+        "kind": "parameter",
+        "displayName": "Quality Score",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "integer",
+        "javaType": "java.lang.Integer",
+        "deprecated": false,
+        "secret": false,
+        "description": "The call quality expressed as an integer from 1 to 5"
+      }
+    },
+    "key": {
+      "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": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "incoming-phone-number-toll-free": {
+      "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": "object",
+        "javaType": "com.twilio.type.PhoneNumber",
+        "deprecated": false,
+        "secret": false,
+        "description": "The phone number to purchase in E.164 format"
+      }
+    },
+    "token": {
+      "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": {
+      "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",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies this resource"
+      }
+    },
+    "available-phone-number-country-toll-free": {
+      "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",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The ISO Country code of the country from which to read phone numbers"
+      }
+    },
+    "usage-record-monthly": {
+      "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": {
+      "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": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique sid that identifies this account"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "A string that identifies the resource to delete"
+      }
+    },
+    "connect-app": {
+      "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",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "address-dependent-phone-number": {
+      "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": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Address resource associated with the phone number"
+      }
+    },
+    "signing-key": {
+      "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": false,
+        "secret": false,
+        "description": "The sid"
+      }
+    },
+    "outgoing-caller-id": {
+      "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": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "call": {
+      "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.twilio.type.Endpoint",
+        "deprecated": false,
+        "secret": false,
+        "description": "Twilio number from which to originate the call"
+      },
+      "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"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies this resource"
+      },
+      "to": {
+        "kind": "parameter",
+        "displayName": "To",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "object",
+        "javaType": "com.twilio.type.Endpoint",
+        "deprecated": false,
+        "secret": false,
+        "description": "Phone number, SIP address, or client identifier to call"
+      },
+      "twiml": {
+        "kind": "parameter",
+        "displayName": "Twiml",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "object",
+        "javaType": "com.twilio.type.Twiml",
+        "deprecated": false,
+        "secret": false,
+        "description": "TwiML instructions for the call"
+      },
+      "url": {
+        "kind": "parameter",
+        "displayName": "Url",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.net.URI",
+        "deprecated": false,
+        "secret": false,
+        "description": "The absolute URL that returns TwiML for this call"
+      }
+    },
+    "incoming-phone-number-local": {
+      "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": "object",
+        "javaType": "com.twilio.type.PhoneNumber",
+        "deprecated": false,
+        "secret": false,
+        "description": "The phone number to purchase in E.164 format"
+      }
+    },
+    "message-feedback": {
+      "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": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The SID of the Message resource for which the feedback was provided"
+      }
+    },
+    "recording": {
+      "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": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique string that identifies the resource"
+      }
+    },
+    "incoming-phone-number-mobile": {
+      "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": "object",
+        "javaType": "com.twilio.type.PhoneNumber",
+        "deprecated": false,
+        "secret": false,
+        "description": "The phone number to purchase in E.164 format"
+      }
+    },
+    "account": {
+      "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"
+      }
+    },
+    "sip-credential-list": {
+      "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": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "The unique id of the Account that is responsible for this resource"
+      },
+      "pathSid": {
+        "kind": "parameter",
+        "displayName": "Path Sid",
+        "group": "common",
+        "label": "",
+        "required": false,
+        "type": "string",
+        "javaType": "java.lang.String",
+        "deprecated": false,
+        "secret": false,
+        "description": "Delete by unique credential list Sid"
+      }
+    }
+  }
+}
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointSchemaGeneratorMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointSchemaGeneratorMojo.java
index 5f0e42e..e8ff7f7 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointSchemaGeneratorMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointSchemaGeneratorMojo.java
@@ -87,12 +87,15 @@ import org.jboss.jandex.DotName;
 import org.jboss.jandex.IndexReader;
 import org.jboss.jandex.IndexView;
 
+import static org.apache.camel.tooling.model.ComponentModel.*;
+
 @Mojo(name = "generate-endpoint-schema", threadSafe = true, requiresDependencyResolution = ResolutionScope.COMPILE_PLUS_RUNTIME,
       defaultPhase = LifecyclePhase.PROCESS_CLASSES)
 public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
 
     public static final DotName URI_ENDPOINT = DotName.createSimple(UriEndpoint.class.getName());
     public static final DotName COMPONENT = DotName.createSimple(Component.class.getName());
+    public static final DotName URI_PARAMS = DotName.createSimple(UriParams.class.getName());
 
     private static final String HEADER_FILTER_STRATEGY_JAVADOC
             = "To use a custom HeaderFilterStrategy to filter header to and from Camel message.";
@@ -125,6 +128,10 @@ public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
             return;
         }
 
+        executeUriEndpoint();
+    }
+
+    private void executeUriEndpoint() throws MojoExecutionException, MojoFailureException {
         List<Class<?>> classes = new ArrayList<>();
         for (AnnotationInstance ai : getIndex().getAnnotations(URI_ENDPOINT)) {
             Class<?> classElement = loadClass(ai.target().asClass().name().toString());
@@ -253,6 +260,9 @@ public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
             generateComponentConfigurer(uriEndpoint, scheme, schemes, componentModel, parentData);
         }
 
+        // enrich the component model with additional configurations for api components
+        enhanceComponentModelWithApiModel(componentModel);
+
         String json = JsonMapper.createParameterJsonSchema(componentModel);
 
         // write json schema
@@ -268,6 +278,25 @@ public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
         return componentModel;
     }
 
+    /**
+     * Used for enhancing the component model with apiProperties for API based components (such as twilio, olingo and
+     * others)
+     */
+    private void enhanceComponentModelWithApiModel(ComponentModel componentModel) {
+        for (AnnotationInstance ai : getIndex().getAnnotations(URI_PARAMS)) {
+            Class<?> classElement = loadClass(ai.target().asClass().name().toString());
+            final UriParams uriParams = classElement.getAnnotation(UriParams.class);
+            if (uriParams != null) {
+                String apiName = uriParams.apiName();
+                if (!Strings.isNullOrEmpty(apiName)) {
+                    String extraPrefix = uriParams.prefix();
+                    findClassProperties(componentModel, classElement, Collections.EMPTY_SET, extraPrefix,
+                            null, null, false);
+                }
+            }
+        }
+    }
+
     protected boolean updateResource(Path dir, String file, String data) {
         resources.put(file, data);
         return super.updateResource(dir, file, data);
@@ -803,6 +832,14 @@ public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
         final Class<?> orgClassElement = classElement;
         excludes = new HashSet<>(excludes);
         while (true) {
+            String apiName = null;
+            boolean apiOption = false;
+            UriParams uriParams = classElement.getAnnotation(UriParams.class);
+            if (uriParams != null) {
+                apiName = uriParams.apiName();
+                apiOption = !Strings.isNullOrEmpty(apiName);
+            }
+
             String excludedProperties = "";
             Metadata metadata = classElement.getAnnotation(Metadata.class);
             if (metadata != null) {
@@ -1026,6 +1063,8 @@ public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
                         BaseOptionModel option;
                         if (componentOption) {
                             option = new ComponentOptionModel();
+                        } else if (apiOption) {
+                            option = new ApiOptionModel();
                         } else {
                             option = new EndpointOptionModel();
                         }
@@ -1051,6 +1090,9 @@ public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
                         if (componentOption) {
                             option.setKind("property");
                             componentModel.addComponentOption((ComponentOptionModel) option);
+                        } else if (apiOption) {
+                            option.setKind("parameter");
+                            componentModel.addApiOption(apiName, (ApiOptionModel) option);
                         } else {
                             option.setKind("parameter");
                             if (componentModel.getEndpointOptions().stream().noneMatch(opt -> name.equals(opt.getName()))) {
@@ -1063,7 +1105,8 @@ public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
 
             // check super classes which may also have fields
             Class<?> superclass = classElement.getSuperclass();
-            if (superclass != null) {
+            if (!apiOption && superclass != null) {
+                // do not check super classes for api options as we only check one level (to include new options and not common)
                 classElement = superclass;
             } else {
                 break;