{
	"connector": {
		"class": "org.apache.camel.kafkaconnector.googlesheets.CamelGooglesheetsSourceConnector",
		"artifactId": "camel-google-sheets-kafka-connector",
		"groupId": "org.apache.camel.kafkaconnector",
		"id": "camel-google-sheets-source",
		"type": "source",
		"version": "0.7.3",
		"description": "Manage spreadsheets in Google Sheets."
	},
	"properties": {
		"camel.source.path.apiName": {
			"name": "camel.source.path.apiName",
			"description": "What kind of operation to perform One of: [SPREADSHEETS] [DATA]",
			"priority": "HIGH",
			"required": "true",
			"enum": [
				"SPREADSHEETS",
				"DATA"
			]
		},
		"camel.source.path.methodName": {
			"name": "camel.source.path.methodName",
			"description": "What sub operation to use for the selected operation One of: [create] [get] [update] [append] [batchUpdate] [clear]",
			"priority": "HIGH",
			"required": "true",
			"enum": [
				"create",
				"get",
				"update",
				"append",
				"batchUpdate",
				"clear"
			]
		},
		"camel.source.endpoint.applicationName": {
			"name": "camel.source.endpoint.applicationName",
			"description": "Google Sheets application name. Example would be camel-google-sheets\/1.0",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.clientId": {
			"name": "camel.source.endpoint.clientId",
			"description": "Client ID of the sheets application",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.inBody": {
			"name": "camel.source.endpoint.inBody",
			"description": "Sets the name of a parameter to be passed in the exchange In Body",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.bridgeErrorHandler": {
			"name": "camel.source.endpoint.bridgeErrorHandler",
			"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.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.sendEmptyMessageWhenIdle": {
			"name": "camel.source.endpoint.sendEmptyMessageWhenIdle",
			"description": "If the polling consumer did not poll any files, you can enable this option to send an empty message (no body) instead.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.splitResult": {
			"name": "camel.source.endpoint.splitResult",
			"description": "When consumer return an array or collection this will generate one exchange per element, and their routes will be executed once for each exchange. Set this value to false to use a single exchange for the entire list or array.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.exceptionHandler": {
			"name": "camel.source.endpoint.exceptionHandler",
			"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.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.exchangePattern": {
			"name": "camel.source.endpoint.exchangePattern",
			"description": "Sets the exchange pattern when the consumer creates an exchange. One of: [InOnly] [InOut] [InOptionalOut]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"InOnly",
				"InOut",
				"InOptionalOut"
			]
		},
		"camel.source.endpoint.pollStrategy": {
			"name": "camel.source.endpoint.pollStrategy",
			"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.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.synchronous": {
			"name": "camel.source.endpoint.synchronous",
			"description": "Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported).",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.backoffErrorThreshold": {
			"name": "camel.source.endpoint.backoffErrorThreshold",
			"description": "The number of subsequent error polls (failed due some error) that should happen before the backoffMultipler should kick-in.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.backoffIdleThreshold": {
			"name": "camel.source.endpoint.backoffIdleThreshold",
			"description": "The number of subsequent idle polls that should happen before the backoffMultipler should kick-in.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.backoffMultiplier": {
			"name": "camel.source.endpoint.backoffMultiplier",
			"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.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.delay": {
			"name": "camel.source.endpoint.delay",
			"description": "Milliseconds before the next poll.",
			"defaultValue": "500L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.greedy": {
			"name": "camel.source.endpoint.greedy",
			"description": "If greedy is enabled, then the ScheduledPollConsumer will run immediately again, if the previous run polled 1 or more messages.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.initialDelay": {
			"name": "camel.source.endpoint.initialDelay",
			"description": "Milliseconds before the first poll starts.",
			"defaultValue": "1000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.repeatCount": {
			"name": "camel.source.endpoint.repeatCount",
			"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.",
			"defaultValue": "0L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.runLoggingLevel": {
			"name": "camel.source.endpoint.runLoggingLevel",
			"description": "The consumer logs a start\/complete log line when it polls. This option allows you to configure the logging level for that. One of: [TRACE] [DEBUG] [INFO] [WARN] [ERROR] [OFF]",
			"defaultValue": "\"TRACE\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"TRACE",
				"DEBUG",
				"INFO",
				"WARN",
				"ERROR",
				"OFF"
			]
		},
		"camel.source.endpoint.scheduledExecutorService": {
			"name": "camel.source.endpoint.scheduledExecutorService",
			"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.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.scheduler": {
			"name": "camel.source.endpoint.scheduler",
			"description": "To use a cron scheduler from either camel-spring or camel-quartz component. Use value spring or quartz for built in scheduler",
			"defaultValue": "\"none\"",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.schedulerProperties": {
			"name": "camel.source.endpoint.schedulerProperties",
			"description": "To configure additional properties when using a custom scheduler or any of the Quartz, Spring based scheduler.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.startScheduler": {
			"name": "camel.source.endpoint.startScheduler",
			"description": "Whether the scheduler should be auto started.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.timeUnit": {
			"name": "camel.source.endpoint.timeUnit",
			"description": "Time unit for initialDelay and delay options. One of: [NANOSECONDS] [MICROSECONDS] [MILLISECONDS] [SECONDS] [MINUTES] [HOURS] [DAYS]",
			"defaultValue": "\"MILLISECONDS\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"NANOSECONDS",
				"MICROSECONDS",
				"MILLISECONDS",
				"SECONDS",
				"MINUTES",
				"HOURS",
				"DAYS"
			]
		},
		"camel.source.endpoint.useFixedDelay": {
			"name": "camel.source.endpoint.useFixedDelay",
			"description": "Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.accessToken": {
			"name": "camel.source.endpoint.accessToken",
			"description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.clientSecret": {
			"name": "camel.source.endpoint.clientSecret",
			"description": "Client secret of the sheets application",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.refreshToken": {
			"name": "camel.source.endpoint.refreshToken",
			"description": "OAuth 2 refresh token. Using this, the Google Sheets component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.applicationName": {
			"name": "camel.component.google-sheets.applicationName",
			"description": "Google Sheets application name. Example would be camel-google-sheets\/1.0",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.clientId": {
			"name": "camel.component.google-sheets.clientId",
			"description": "Client ID of the sheets application",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.configuration": {
			"name": "camel.component.google-sheets.configuration",
			"description": "To use the shared configuration",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.bridgeErrorHandler": {
			"name": "camel.component.google-sheets.bridgeErrorHandler",
			"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.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.splitResult": {
			"name": "camel.component.google-sheets.splitResult",
			"description": "When consumer return an array or collection this will generate one exchange per element, and their routes will be executed once for each exchange. Set this value to false to use a single exchange for the entire list or array.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.autowiredEnabled": {
			"name": "camel.component.google-sheets.autowiredEnabled",
			"description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.clientFactory": {
			"name": "camel.component.google-sheets.clientFactory",
			"description": "To use the GoogleSheetsClientFactory as factory for creating the client. Will by default use BatchGoogleSheetsClientFactory",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.accessToken": {
			"name": "camel.component.google-sheets.accessToken",
			"description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.clientSecret": {
			"name": "camel.component.google-sheets.clientSecret",
			"description": "Client secret of the sheets application",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.google-sheets.refreshToken": {
			"name": "camel.component.google-sheets.refreshToken",
			"description": "OAuth 2 refresh token. Using this, the Google Sheets component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived.",
			"priority": "MEDIUM",
			"required": "false"
		}
	}
}