Body
Required
-
Kafka authentication methods
-
Enable Kafka-REST service
-
Allow clients to connect to kafka_connect from the public internet for service nodes that are in a project VPC or another type of private network
-
Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16'
-
Schema Registry configuration
Additional properties are NOT allowed.
-
Kafka REST configuration
Additional properties are NOT allowed.
-
Service is protected against termination and powering off
-
Kafka Connect configuration values
Additional properties are NOT allowed.
-
Automatic maintenance settings
-
Kafka-specific settings
Additional properties are NOT allowed.
-
Enable Schema-Registry service
-
Kafka major version
Minimum length is
1. -
Subscription plan
Minimum length is
1, maximum length is128.
PUT
/dbaas-kafka/{name}
curl \
--request PUT 'https://api-ch-gva-2.exoscale.com/v2/dbaas-kafka/{name}' \
--header "Content-Type: application/json" \
--data '{
"authentication-methods": {
"certificate": true,
"sasl": true
},
"kafka-rest-enabled": true,
"kafka-connect-enabled": true,
"ip-filter": [
"string"
],
"schema-registry-settings": {
"leader_eligibility": true,
"topic_name": "_schemas"
},
"kafka-rest-settings": {
"producer_compression_type": "gzip",
"name_strategy_validation": true,
"name_strategy": "topic_name",
"consumer_enable_auto_commit": true,
"producer_acks": "1",
"consumer_request_max_bytes": 67108864,
"producer_max_request_size": 1048576,
"simpleconsumer_pool_size_max": 25,
"producer_linger_ms": 0,
"consumer_request_timeout_ms": 1000
},
"termination-protection": true,
"kafka-connect-settings": {
"producer_buffer_memory": 8388608,
"consumer_max_poll_interval_ms": 300000,
"producer_compression_type": "gzip",
"connector_client_config_override_policy": "None",
"offset_flush_interval_ms": 60000,
"scheduled_rebalance_max_delay_ms": 300000,
"consumer_fetch_max_bytes": 52428800,
"consumer_max_partition_fetch_bytes": 1048576,
"offset_flush_timeout_ms": 5000,
"consumer_auto_offset_reset": "earliest",
"producer_max_request_size": 1048576,
"producer_batch_size": 1024,
"session_timeout_ms": 10000,
"producer_linger_ms": 100,
"consumer_isolation_level": "read_uncommitted",
"consumer_max_poll_records": 500
},
"maintenance": {
"dow": "saturday",
"time": "string"
},
"kafka-settings": {
"sasl_oauthbearer_expected_audience": "string",
"group_max_session_timeout_ms": 1800000,
"log_flush_interval_messages": 9223372036854775807,
"sasl_oauthbearer_jwks_endpoint_url": "string",
"max_connections_per_ip": 42,
"sasl_oauthbearer_expected_issuer": "string",
"log_index_size_max_bytes": 10485760,
"auto_create_topics_enable": true,
"log_index_interval_bytes": 4096,
"replica_fetch_max_bytes": 42,
"num_partitions": 42,
"transaction_state_log_segment_bytes": 104857600,
"replica_fetch_response_max_bytes": 42,
"log_message_timestamp_type": "CreateTime",
"connections_max_idle_ms": 540000,
"log_flush_interval_ms": 42,
"log_preallocate": false,
"log_segment_delete_delay_ms": 60000,
"message_max_bytes": 1048588,
"group_initial_rebalance_delay_ms": 3000,
"log_local_retention_bytes": 42,
"log_roll_jitter_ms": 42,
"transaction_remove_expired_transaction_cleanup_interval_ms": 3600000,
"transaction_partition_verification_enable": true,
"default_replication_factor": 42,
"log_roll_ms": 42,
"producer_purgatory_purge_interval_requests": 42,
"log_retention_bytes": 42,
"min_insync_replicas": 1,
"compression_type": "gzip",
"log_message_timestamp_difference_max_ms": 42,
"log_local_retention_ms": 42,
"log_message_downconversion_enable": true,
"sasl_oauthbearer_sub_claim_name": "string",
"max_incremental_fetch_session_cache_slots": 1000,
"log_retention_hours": 42,
"group_min_session_timeout_ms": 6000,
"socket_request_max_bytes": 42,
"log_segment_bytes": 42,
"log-cleanup-and-compaction": {
"log_cleaner_delete_retention_ms": 86400000,
"log_cleaner_max_compaction_lag_ms": 42,
"log_cleaner_min_cleanable_ratio": 0.5,
"log_cleaner_min_compaction_lag_ms": 42,
"log_cleanup_policy": "delete"
},
"offsets_retention_minutes": 10080,
"log_retention_ms": 42
},
"schema-registry-enabled": true,
"version": "string",
"plan": "string"
}'
Request examples
{
"authentication-methods": {
"certificate": true,
"sasl": true
},
"kafka-rest-enabled": true,
"kafka-connect-enabled": true,
"ip-filter": [
"string"
],
"schema-registry-settings": {
"leader_eligibility": true,
"topic_name": "_schemas"
},
"kafka-rest-settings": {
"producer_compression_type": "gzip",
"name_strategy_validation": true,
"name_strategy": "topic_name",
"consumer_enable_auto_commit": true,
"producer_acks": "1",
"consumer_request_max_bytes": 67108864,
"producer_max_request_size": 1048576,
"simpleconsumer_pool_size_max": 25,
"producer_linger_ms": 0,
"consumer_request_timeout_ms": 1000
},
"termination-protection": true,
"kafka-connect-settings": {
"producer_buffer_memory": 8388608,
"consumer_max_poll_interval_ms": 300000,
"producer_compression_type": "gzip",
"connector_client_config_override_policy": "None",
"offset_flush_interval_ms": 60000,
"scheduled_rebalance_max_delay_ms": 300000,
"consumer_fetch_max_bytes": 52428800,
"consumer_max_partition_fetch_bytes": 1048576,
"offset_flush_timeout_ms": 5000,
"consumer_auto_offset_reset": "earliest",
"producer_max_request_size": 1048576,
"producer_batch_size": 1024,
"session_timeout_ms": 10000,
"producer_linger_ms": 100,
"consumer_isolation_level": "read_uncommitted",
"consumer_max_poll_records": 500
},
"maintenance": {
"dow": "saturday",
"time": "string"
},
"kafka-settings": {
"sasl_oauthbearer_expected_audience": "string",
"group_max_session_timeout_ms": 1800000,
"log_flush_interval_messages": 9223372036854775807,
"sasl_oauthbearer_jwks_endpoint_url": "string",
"max_connections_per_ip": 42,
"sasl_oauthbearer_expected_issuer": "string",
"log_index_size_max_bytes": 10485760,
"auto_create_topics_enable": true,
"log_index_interval_bytes": 4096,
"replica_fetch_max_bytes": 42,
"num_partitions": 42,
"transaction_state_log_segment_bytes": 104857600,
"replica_fetch_response_max_bytes": 42,
"log_message_timestamp_type": "CreateTime",
"connections_max_idle_ms": 540000,
"log_flush_interval_ms": 42,
"log_preallocate": false,
"log_segment_delete_delay_ms": 60000,
"message_max_bytes": 1048588,
"group_initial_rebalance_delay_ms": 3000,
"log_local_retention_bytes": 42,
"log_roll_jitter_ms": 42,
"transaction_remove_expired_transaction_cleanup_interval_ms": 3600000,
"transaction_partition_verification_enable": true,
"default_replication_factor": 42,
"log_roll_ms": 42,
"producer_purgatory_purge_interval_requests": 42,
"log_retention_bytes": 42,
"min_insync_replicas": 1,
"compression_type": "gzip",
"log_message_timestamp_difference_max_ms": 42,
"log_local_retention_ms": 42,
"log_message_downconversion_enable": true,
"sasl_oauthbearer_sub_claim_name": "string",
"max_incremental_fetch_session_cache_slots": 1000,
"log_retention_hours": 42,
"group_min_session_timeout_ms": 6000,
"socket_request_max_bytes": 42,
"log_segment_bytes": 42,
"log-cleanup-and-compaction": {
"log_cleaner_delete_retention_ms": 86400000,
"log_cleaner_max_compaction_lag_ms": 42,
"log_cleaner_min_cleanable_ratio": 0.5,
"log_cleaner_min_compaction_lag_ms": 42,
"log_cleanup_policy": "delete"
},
"offsets_retention_minutes": 10080,
"log_retention_ms": 42
},
"schema-registry-enabled": true,
"version": "string",
"plan": "string"
}
Response examples (200)
{
"id": "string",
"reason": "incorrect",
"reference": {
"id": "string",
"link": "string",
"command": "string"
},
"message": "string",
"state": "failure"
}