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/16 12:51:58 UTC

[camel] 01/06: CAMEL-15478: Generated component json for API components to include expected information

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

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

commit c6040dadd8aa2e8aabf6a81014081c817a382cff
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Sep 16 11:50:26 2020 +0200

    CAMEL-15478: Generated component json for API components to include expected information
---
 .../org/apache/camel/component/twilio/twilio.json  | 2718 +++++++++++++++++++-
 .../apache/camel/tooling/model/ComponentModel.java |   27 +-
 .../packaging/EndpointSchemaGeneratorMojo.java     |   15 +-
 3 files changed, 2666 insertions(+), 94 deletions(-)

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 f6bb6c4..1691de8 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
@@ -23,98 +23,2638 @@
     "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 [...]
-    "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 r [...]
-    "basicPropertyBinding": { "kind": "property", "displayName": "Basic Property Binding", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": true, "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." }
+    "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": true,
+      "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", "TR [...]
-    "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 b [...]
-    "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 [...]
-    "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 h [...]
-    "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  [...]
-    "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  [...]
-    "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." }
+    "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": { "apiName": "recording-add-on-result-payload", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "des [...]
-    "usage-record-today": { "apiName": "usage-record-today", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "available-phone-number-country-local": { "apiName": "available-phone-number-country-local", "methods": { "reader": { "apiMethodName": "reader", "description": "The ISO Country code of the country from which to read phone numbers", "properties": { "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "call-recording": { "apiName": "call-recording", "methods": { "updater": { "apiMethodName": "updater", "description": "The new status of the recording", "properties": { "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 [...]
-    "queue-member": { "apiName": "queue-member", "methods": { "updater": { "apiMethodName": "updater", "description": "The absolute URL of the Queue resource", "properties": { "url": { "kind": "parameter", "displayName": "Url", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.net.URI", "deprecated": false, "secret": false, "description": "" } } } } },
-    "usage-trigger": { "apiName": "usage-trigger", "methods": { "creator": { "apiMethodName": "creator", "description": "The usage category the trigger watches", "properties": { "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-ca [...]
-    "usage-record-last-month": { "apiName": "usage-record-last-month", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "usage-record-all-time": { "apiName": "usage-record-all-time", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "recording-transcription": { "apiName": "recording-transcription", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The  [...]
-    "message": { "apiName": "message", "methods": { "creator": { "apiMethodName": "creator", "description": "The destination phone number", "properties": { "to": { "kind": "parameter", "displayName": "To", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "" } } } } },
-    "call-feedback-summary": { "apiName": "call-feedback-summary", "methods": { "creator": { "apiMethodName": "creator", "description": "Only include feedback given on or after this date", "properties": { "startDate": { "kind": "parameter", "displayName": "Start Date", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.joda.time.LocalDate", "deprecated": false, "secret": false, "description": "" } } } } },
-    "sip-credential-list-credential": { "apiName": "sip-credential-list-credential", "methods": { "creator": { "apiMethodName": "creator", "description": "The username for this credential", "properties": { "username": { "kind": "parameter", "displayName": "Username", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "new-key": { "apiName": "new-key", "methods": { "creator": { "apiMethodName": "creator", "description": "The SID of the Account that will be responsible for the new Key resource", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "incoming-phone-number": { "apiName": "incoming-phone-number", "methods": { "creator": { "apiMethodName": "creator", "description": "The phone number to purchase in E.164 format", "properties": { "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "" } } } } },
-    "call-notification": { "apiName": "call-notification", "methods": { "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "validation-request": { "apiName": "validation-request", "methods": { "creator": { "apiMethodName": "creator", "description": "The phone number to verify in E.164 format", "properties": { "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "" } } } } },
-    "usage-record-yesterday": { "apiName": "usage-record-yesterday", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "usage-record-this-month": { "apiName": "usage-record-this-month", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "new-signing-key": { "apiName": "new-signing-key", "methods": { "creator": { "apiMethodName": "creator", "description": "The SID of the Account that will be responsible for the new Key resource", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "conference": { "apiName": "conference", "methods": { "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that identifies this resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "updater": { "apiMethodName": "updater", "description": "The unique string that identi [...]
-    "usage-record-daily": { "apiName": "usage-record-daily", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "application": { "apiName": "application", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that ident [...]
-    "usage-record": { "apiName": "usage-record", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "available-phone-number-country-mobile": { "apiName": "available-phone-number-country-mobile", "methods": { "reader": { "apiMethodName": "reader", "description": "The ISO Country code of the country from which to read phone numbers", "properties": { "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "conference-participant": { "apiName": "conference-participant", "methods": { "creator": { "apiMethodName": "creator", "description": "The phone number, SIP address or Client identifier that received this call.", "properties": { "to": { "kind": "parameter", "displayName": "To", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "" } } } } },
-    "recording-add-on-result": { "apiName": "recording-add-on-result", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource to delete", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "descripti [...]
-    "notification": { "apiName": "notification", "methods": { "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "sip-domain-ip-access-control-list-mapping": { "apiName": "sip-domain-ip-access-control-list-mapping", "methods": { "deleter": { "apiMethodName": "deleter", "description": "A 34 character string that uniquely identifies the resource to delete.", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, " [...]
-    "sip-domain": { "apiName": "sip-domain", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that identif [...]
-    "address": { "apiName": "address", "methods": { "creator": { "apiMethodName": "creator", "description": "The number and street address of the new address", "properties": { "street": { "kind": "parameter", "displayName": "Street", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "message-media": { "apiName": "message-media", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies this resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that  [...]
-    "sip-ip-access-control-list-ip-address": { "apiName": "sip-ip-access-control-list-ip-address", "methods": { "deleter": { "apiMethodName": "deleter", "description": "A string that identifies the resource to delete", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "f [...]
-    "available-phone-number-country": { "apiName": "available-phone-number-country", "methods": { "fetcher": { "apiMethodName": "fetcher", "description": "The ISO country code of the country to fetch available phone number information about", "properties": { "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": " [...]
-    "usage-record-yearly": { "apiName": "usage-record-yearly", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "queue": { "apiName": "queue", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies this resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that identifies this  [...]
-    "transcription": { "apiName": "transcription", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that i [...]
-    "sip-domain-credential-list-mapping": { "apiName": "sip-domain-credential-list-mapping", "methods": { "deleter": { "apiMethodName": "deleter", "description": "A string that identifies the resource to delete", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher [...]
-    "call-feedback": { "apiName": "call-feedback", "methods": { "creator": { "apiMethodName": "creator", "description": "The call quality expressed as an integer from 1 to 5", "properties": { "qualityScore": { "kind": "parameter", "displayName": "Quality Score", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "description": "" } } }, "updater": { "apiMethodName": "updater", "description": "The ca [...]
-    "key": { "apiName": "key", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that identifies the resour [...]
-    "incoming-phone-number-toll-free": { "apiName": "incoming-phone-number-toll-free", "methods": { "creator": { "apiMethodName": "creator", "description": "The phone number to purchase in E.164 format", "properties": { "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "" } } } } },
-    "token": { "apiName": "token", "methods": { "creator": { "apiMethodName": "creator", "description": "The SID of the Account that will create the resource", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "short-code": { "apiName": "short-code", "methods": { "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that identifies this resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "updater": { "apiMethodName": "updater", "description": "The unique string that identi [...]
-    "available-phone-number-country-toll-free": { "apiName": "available-phone-number-country-toll-free", "methods": { "reader": { "apiMethodName": "reader", "description": "The ISO Country code of the country from which to read phone numbers", "properties": { "pathCountryCode": { "kind": "parameter", "displayName": "Path Country Code", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description":  [...]
-    "usage-record-monthly": { "apiName": "usage-record-monthly", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Account that created the resources to read", "properties": { "pathAccountSid": { "kind": "parameter", "displayName": "Path Account Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "sip-ip-access-control-list": { "apiName": "sip-ip-access-control-list", "methods": { "deleter": { "apiMethodName": "deleter", "description": "A string that identifies the resource to delete", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description" [...]
-    "connect-app": { "apiName": "connect-app", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that ident [...]
-    "address-dependent-phone-number": { "apiName": "address-dependent-phone-number", "methods": { "reader": { "apiMethodName": "reader", "description": "The SID of the Address resource associated with the phone number", "properties": { "pathAddressSid": { "kind": "parameter", "displayName": "Path Address Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "signing-key": { "apiName": "signing-key", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The sid", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The sid", "properties": { "pathSid": { "kind": "parameter", "displa [...]
-    "outgoing-caller-id": { "apiName": "outgoing-caller-id", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique str [...]
-    "call": { "apiName": "call", "methods": { "creator": { "apiMethodName": "creator", "description": "The absolute URL that returns TwiML for this call", "properties": { "url": { "kind": "parameter", "displayName": "Url", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.net.URI", "deprecated": false, "secret": false, "description": "" } } } } },
-    "incoming-phone-number-local": { "apiName": "incoming-phone-number-local", "methods": { "creator": { "apiMethodName": "creator", "description": "The phone number to purchase in E.164 format", "properties": { "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "" } } } } },
-    "message-feedback": { "apiName": "message-feedback", "methods": { "creator": { "apiMethodName": "creator", "description": "The SID of the Message resource for which the feedback was provided", "properties": { "pathMessageSid": { "kind": "parameter", "displayName": "Path Message Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } } } },
-    "recording": { "apiName": "recording", "methods": { "deleter": { "apiMethodName": "deleter", "description": "The unique string that identifies the resource", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "The unique string that identifie [...]
-    "incoming-phone-number-mobile": { "apiName": "incoming-phone-number-mobile", "methods": { "creator": { "apiMethodName": "creator", "description": "The phone number to purchase in E.164 format", "properties": { "phoneNumber": { "kind": "parameter", "displayName": "Phone Number", "group": "common", "label": "", "required": false, "type": "object", "javaType": "com.twilio.type.PhoneNumber", "deprecated": false, "secret": false, "description": "" } } } } },
-    "account": { "apiName": "account", "methods": { "fetcher": { "apiMethodName": "fetcher", "description": "Fetch by unique Account Sid", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "updater": { "apiMethodName": "updater", "description": "Update by unique Account Sid", "properties": { "pathSid [...]
-    "sip-credential-list": { "apiName": "sip-credential-list", "methods": { "deleter": { "apiMethodName": "deleter", "description": "Delete by unique credential list Sid", "properties": { "pathSid": { "kind": "parameter", "displayName": "Path Sid", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "description": "" } } }, "fetcher": { "apiMethodName": "fetcher", "description": "Fetch by unique creden [...]
+    "recording-add-on-result-payload": {
+      "apiName": "recording-add-on-result-payload",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a PayloadDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a PayloadFetcher to execute fetch",
+          "properties": {
+            "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 fetch"
+            }
+          }
+        }
+      }
+    },
+    "usage-record-today": {
+      "apiName": "usage-record-today",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a TodayReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "available-phone-number-country-local": {
+      "apiName": "available-phone-number-country-local",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a LocalReader to execute read",
+          "properties": {
+            "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": {
+      "apiName": "call-recording",
+      "methods": {
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a RecordingUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "queue-member",
+      "methods": {
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a MemberUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "usage-trigger",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a TriggerCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "usage-record-last-month",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a LastMonthReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "usage-record-all-time": {
+      "apiName": "usage-record-all-time",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a AllTimeReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "recording-transcription": {
+      "apiName": "recording-transcription",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a TranscriptionDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a TranscriptionFetcher to execute fetch",
+          "properties": {
+            "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": {
+      "apiName": "message",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a MessageCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "call-feedback-summary",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a FeedbackSummaryCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "sip-credential-list-credential",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a CredentialCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "new-key",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a NewKeyCreator to execute create",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that will be responsible for the new Key resource"
+            }
+          }
+        }
+      }
+    },
+    "incoming-phone-number": {
+      "apiName": "incoming-phone-number",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a IncomingPhoneNumberCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "call-notification",
+      "methods": {
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a NotificationFetcher to execute fetch",
+          "properties": {
+            "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": {
+      "apiName": "validation-request",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a ValidationRequestCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "usage-record-yesterday",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a YesterdayReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "usage-record-this-month": {
+      "apiName": "usage-record-this-month",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a ThisMonthReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "new-signing-key": {
+      "apiName": "new-signing-key",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a NewSigningKeyCreator to execute create",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that will be responsible for the new Key resource"
+            }
+          }
+        }
+      }
+    },
+    "conference": {
+      "apiName": "conference",
+      "methods": {
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a ConferenceFetcher to execute fetch",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a ConferenceUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "usage-record-daily",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a DailyReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "application": {
+      "apiName": "application",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a ApplicationDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a ApplicationFetcher to execute fetch",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a ApplicationUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "usage-record",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a RecordReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "available-phone-number-country-mobile": {
+      "apiName": "available-phone-number-country-mobile",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a MobileReader to execute read",
+          "properties": {
+            "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": {
+      "apiName": "conference-participant",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a ParticipantCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "recording-add-on-result",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a AddOnResultDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a AddOnResultFetcher to execute fetch",
+          "properties": {
+            "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 fetch"
+            }
+          }
+        }
+      }
+    },
+    "notification": {
+      "apiName": "notification",
+      "methods": {
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a NotificationFetcher to execute fetch",
+          "properties": {
+            "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": {
+      "apiName": "sip-domain-ip-access-control-list-mapping",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a IpAccessControlListMappingDeleter to execute delete",
+          "properties": {
+            "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."
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a IpAccessControlListMappingFetcher to execute fetch",
+          "properties": {
+            "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 fetch."
+            }
+          }
+        }
+      }
+    },
+    "sip-domain": {
+      "apiName": "sip-domain",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a DomainDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a DomainFetcher to execute fetch",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a DomainUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "address",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a AddressCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "message-media",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a MediaDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a MediaFetcher to execute fetch",
+          "properties": {
+            "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": {
+      "apiName": "sip-ip-access-control-list-ip-address",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a IpAddressDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a IpAddressFetcher to execute fetch",
+          "properties": {
+            "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 IpAddress resource to fetch"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a IpAddressUpdater to execute update",
+          "properties": {
+            "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 IpAddress resource to update"
+            }
+          }
+        }
+      }
+    },
+    "available-phone-number-country": {
+      "apiName": "available-phone-number-country",
+      "methods": {
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a AvailablePhoneNumberCountryFetcher to execute fetch",
+          "properties": {
+            "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": {
+      "apiName": "usage-record-yearly",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a YearlyReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "queue": {
+      "apiName": "queue",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a QueueDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a QueueFetcher to execute fetch",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a QueueUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "transcription",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a TranscriptionDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a TranscriptionFetcher to execute fetch",
+          "properties": {
+            "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": {
+      "apiName": "sip-domain-credential-list-mapping",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a CredentialListMappingDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a CredentialListMappingFetcher to execute fetch",
+          "properties": {
+            "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 fetch"
+            }
+          }
+        }
+      }
+    },
+    "call-feedback": {
+      "apiName": "call-feedback",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a FeedbackCreator to execute create",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a FeedbackUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "key",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a KeyDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a KeyFetcher to execute fetch",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a KeyUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "incoming-phone-number-toll-free",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a TollFreeCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "token",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a TokenCreator to execute create",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that will create the resource"
+            }
+          }
+        }
+      }
+    },
+    "short-code": {
+      "apiName": "short-code",
+      "methods": {
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a ShortCodeFetcher to execute fetch",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a ShortCodeUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "available-phone-number-country-toll-free",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a TollFreeReader to execute read",
+          "properties": {
+            "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": {
+      "apiName": "usage-record-monthly",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a MonthlyReader to execute read",
+          "properties": {
+            "pathAccountSid": {
+              "kind": "parameter",
+              "displayName": "Path Account Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The SID of the Account that created the resources to read"
+            }
+          }
+        }
+      }
+    },
+    "sip-ip-access-control-list": {
+      "apiName": "sip-ip-access-control-list",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a IpAccessControlListDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a IpAccessControlListFetcher to execute fetch",
+          "properties": {
+            "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 fetch"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a IpAccessControlListUpdater to execute update",
+          "properties": {
+            "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 update"
+            }
+          }
+        }
+      }
+    },
+    "connect-app": {
+      "apiName": "connect-app",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a ConnectAppDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a ConnectAppFetcher to execute fetch",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a ConnectAppUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "address-dependent-phone-number",
+      "methods": {
+        "reader": {
+          "apiMethodName": "reader",
+          "description": "Create a DependentPhoneNumberReader to execute read",
+          "properties": {
+            "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": {
+      "apiName": "signing-key",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a SigningKeyDeleter to execute delete",
+          "properties": {
+            "pathSid": {
+              "kind": "parameter",
+              "displayName": "Path Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The sid"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a SigningKeyFetcher to execute fetch",
+          "properties": {
+            "pathSid": {
+              "kind": "parameter",
+              "displayName": "Path Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "The sid"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a SigningKeyUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "outgoing-caller-id",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a OutgoingCallerIdDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a OutgoingCallerIdFetcher to execute fetch",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a OutgoingCallerIdUpdater to execute update",
+          "properties": {
+            "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": {
+      "apiName": "call",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a CallCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "incoming-phone-number-local",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a LocalCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "message-feedback",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a FeedbackCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "recording",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a RecordingDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a RecordingFetcher to execute fetch",
+          "properties": {
+            "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": {
+      "apiName": "incoming-phone-number-mobile",
+      "methods": {
+        "creator": {
+          "apiMethodName": "creator",
+          "description": "Create a MobileCreator to execute create",
+          "properties": {
+            "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": {
+      "apiName": "account",
+      "methods": {
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a AccountFetcher to execute fetch",
+          "properties": {
+            "pathSid": {
+              "kind": "parameter",
+              "displayName": "Path Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "Fetch by unique Account Sid"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a AccountUpdater to execute update",
+          "properties": {
+            "pathSid": {
+              "kind": "parameter",
+              "displayName": "Path Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "Update by unique Account Sid"
+            }
+          }
+        }
+      }
+    },
+    "sip-credential-list": {
+      "apiName": "sip-credential-list",
+      "methods": {
+        "deleter": {
+          "apiMethodName": "deleter",
+          "description": "Create a CredentialListDeleter to execute delete",
+          "properties": {
+            "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"
+            }
+          }
+        },
+        "fetcher": {
+          "apiMethodName": "fetcher",
+          "description": "Create a CredentialListFetcher to execute fetch",
+          "properties": {
+            "pathSid": {
+              "kind": "parameter",
+              "displayName": "Path Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "Fetch by unique credential list Sid"
+            }
+          }
+        },
+        "updater": {
+          "apiMethodName": "updater",
+          "description": "Create a CredentialListUpdater to execute update",
+          "properties": {
+            "pathSid": {
+              "kind": "parameter",
+              "displayName": "Path Sid",
+              "group": "common",
+              "label": "",
+              "required": false,
+              "type": "string",
+              "javaType": "java.lang.String",
+              "deprecated": false,
+              "secret": false,
+              "description": "Update by unique credential list Sid"
+            }
+          }
+        }
+      }
+    }
   }
 }
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 f971fab..ce1e217 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
@@ -181,7 +181,30 @@ public class ComponentModel extends ArtifactModel<ComponentModel.ComponentOption
 
     }
 
-    public static class ApiOptionModel extends BaseOptionModel {
-
+    public static class ApiOptionModel extends BaseOptionModel implements Cloneable {
+
+        // we need to be able to copy this option for api
+        // options as we output the same options for each supported api methods,
+        // however with a few changes per method
+
+        public ApiOptionModel copy() {
+            try {
+                return (ApiOptionModel) clone();
+            } catch (CloneNotSupportedException e) {
+                throw new RuntimeException(e);
+            }
+        }
+
+        @Override
+        protected Object clone() throws CloneNotSupportedException {
+            ApiOptionModel copy = (ApiOptionModel) super.clone();
+            if (this.getEnums() != null) {
+                copy.setEnums(new ArrayList<>(this.getEnums()));
+            }
+            if (this.getOneOfs() != null) {
+                copy.setOneOfs(new ArrayList<>(this.getOneOfs()));
+            }
+            return copy;
+        }
     }
 }
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 7e3f090..4263ca3 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
@@ -1104,10 +1104,19 @@ public class EndpointSchemaGeneratorMojo extends AbstractGeneratorMojo {
                             api.setName(apiName);
                             for (ApiMethod method : apiParam.apiMethods()) {
                                 ApiMethodModel apiMethod = new ApiMethodModel();
-                                apiMethod.setName(method.methodName());
-                                apiMethod.setDescription(method.description());
-                                apiMethod.addApiOptionModel((ApiOptionModel) option);
                                 api.addMethod(apiMethod);
+                                apiMethod.setName(method.methodName());
+                                // the method description is stored on @ApiParams
+                                if (apiParams != null) {
+                                    Arrays.stream(apiParams.apiMethods())
+                                            .filter(m -> m.methodName().equals(method.methodName()))
+                                            .findFirst().ifPresent(m -> apiMethod.setDescription(m.description()));
+                                }
+                                // copy the option and override with the correct description
+                                ApiOptionModel copy = ((ApiOptionModel) option).copy();
+                                apiMethod.addApiOptionModel(copy);
+                                // the option description is stored on @ApiMethod
+                                copy.setDescription(method.description());
                             }
                             componentModel.getApiOptions().add(api);
                         } else {