Managed Service for Apache Kafka® API, REST: Topic.Create
Creates a new Kafka topic in the specified cluster.
HTTP request
POST https://mdb.api.cloud.yandex.net/managed-kafka/v1/clusters/{clusterId}/topics
Path parameters
|
Field |
Description |
|
clusterId |
string Required field. ID of the Apache Kafka® cluster to create a topic in. To get the cluster ID, make a ClusterService.List request. |
Body parameters
{
"topicSpec": {
"name": "string",
"partitions": "string",
"replicationFactor": "string",
// Includes only one of the fields `topicConfig_2_8`, `topicConfig_3`
"topicConfig_2_8": {
"cleanupPolicy": "string",
"compressionType": "string",
"deleteRetentionMs": "string",
"fileDeleteDelayMs": "string",
"flushMessages": "string",
"flushMs": "string",
"minCompactionLagMs": "string",
"retentionBytes": "string",
"retentionMs": "string",
"maxMessageBytes": "string",
"minInsyncReplicas": "string",
"segmentBytes": "string",
"preallocate": "boolean"
},
"topicConfig_3": {
"cleanupPolicy": "string",
"compressionType": "string",
"deleteRetentionMs": "string",
"fileDeleteDelayMs": "string",
"flushMessages": "string",
"flushMs": "string",
"minCompactionLagMs": "string",
"retentionBytes": "string",
"retentionMs": "string",
"maxMessageBytes": "string",
"minInsyncReplicas": "string",
"segmentBytes": "string",
"preallocate": "boolean"
}
// end of the list of possible fields
}
}
|
Field |
Description |
|
topicSpec |
Required field. Configuration of the topic to create. |
TopicSpec
|
Field |
Description |
|
name |
string Name of the topic. |
|
partitions |
string (int64) The number of the topic's partitions. |
|
replicationFactor |
string (int64) Amount of copies of a topic data kept in the cluster. |
|
topicConfig_2_8 |
Includes only one of the fields User-defined settings for the topic. |
|
topicConfig_3 |
Includes only one of the fields User-defined settings for the topic. |
TopicConfig2_8
A topic settings for 2.8
|
Field |
Description |
|
cleanupPolicy |
enum (CleanupPolicy) Retention policy to use on old log messages.
|
|
compressionType |
enum (CompressionType) The compression type for a given topic.
|
|
deleteRetentionMs |
string (int64) The amount of time in milliseconds to retain delete tombstone markers for log compacted topics. |
|
fileDeleteDelayMs |
string (int64) The time to wait before deleting a file from the filesystem. |
|
flushMessages |
string (int64) The number of messages accumulated on a log partition before messages are flushed to disk. This setting overrides the cluster-level KafkaConfig2_8.logFlushIntervalMessages setting on the topic level. |
|
flushMs |
string (int64) The maximum time in milliseconds that a message in the topic is kept in memory before flushed to disk. This setting overrides the cluster-level KafkaConfig2_8.logFlushIntervalMs setting on the topic level. |
|
minCompactionLagMs |
string (int64) The minimum time in milliseconds a message will remain uncompacted in the log. |
|
retentionBytes |
string (int64) The maximum size a partition can grow to before Kafka will discard old log segments to free up space if the This setting overrides the cluster-level KafkaConfig2_8.logRetentionBytes setting on the topic level. |
|
retentionMs |
string (int64) The number of milliseconds to keep a log segment's file before deleting it. This setting overrides the cluster-level KafkaConfig2_8.logRetentionMs setting on the topic level. |
|
maxMessageBytes |
string (int64) The largest record batch size allowed in topic. |
|
minInsyncReplicas |
string (int64) This configuration specifies the minimum number of replicas that must acknowledge a write to topic for the write |
|
segmentBytes |
string (int64) This configuration controls the segment file size for the log. Retention and cleaning is always done a file This setting overrides the cluster-level KafkaConfig2_8.logSegmentBytes setting on the topic level. |
|
preallocate |
boolean True if we should preallocate the file on disk when creating a new log segment. This setting overrides the cluster-level KafkaConfig2_8.logPreallocate setting on the topic level. |
TopicConfig3
A topic settings for 3.x
|
Field |
Description |
|
cleanupPolicy |
enum (CleanupPolicy) Retention policy to use on old log messages.
|
|
compressionType |
enum (CompressionType) The compression type for a given topic.
|
|
deleteRetentionMs |
string (int64) The amount of time in milliseconds to retain delete tombstone markers for log compacted topics. |
|
fileDeleteDelayMs |
string (int64) The time to wait before deleting a file from the filesystem. |
|
flushMessages |
string (int64) The number of messages accumulated on a log partition before messages are flushed to disk. This setting overrides the cluster-level KafkaConfig3.logFlushIntervalMessages setting on the topic level. |
|
flushMs |
string (int64) The maximum time in milliseconds that a message in the topic is kept in memory before flushed to disk. This setting overrides the cluster-level KafkaConfig3.logFlushIntervalMs setting on the topic level. |
|
minCompactionLagMs |
string (int64) The minimum time in milliseconds a message will remain uncompacted in the log. |
|
retentionBytes |
string (int64) The maximum size a partition can grow to before Kafka will discard old log segments to free up space if the This setting overrides the cluster-level KafkaConfig3.logRetentionBytes setting on the topic level. |
|
retentionMs |
string (int64) The number of milliseconds to keep a log segment's file before deleting it. This setting overrides the cluster-level KafkaConfig3.logRetentionMs setting on the topic level. |
|
maxMessageBytes |
string (int64) The largest record batch size allowed in topic. |
|
minInsyncReplicas |
string (int64) This configuration specifies the minimum number of replicas that must acknowledge a write to topic for the write |
|
segmentBytes |
string (int64) This configuration controls the segment file size for the log. Retention and cleaning is always done a file This setting overrides the cluster-level KafkaConfig3.logSegmentBytes setting on the topic level. |
|
preallocate |
boolean True if we should preallocate the file on disk when creating a new log segment. This setting overrides the cluster-level KafkaConfig3.logPreallocate setting on the topic level. |
Response
HTTP Code: 200 - OK
{
"id": "string",
"description": "string",
"createdAt": "string",
"createdBy": "string",
"modifiedAt": "string",
"done": "boolean",
"metadata": {
"clusterId": "string",
"topicName": "string"
},
// Includes only one of the fields `error`, `response`
"error": {
"code": "integer",
"message": "string",
"details": [
"object"
]
},
"response": {
"name": "string",
"clusterId": "string",
"partitions": "string",
"replicationFactor": "string",
// Includes only one of the fields `topicConfig_2_8`, `topicConfig_3`
"topicConfig_2_8": {
"cleanupPolicy": "string",
"compressionType": "string",
"deleteRetentionMs": "string",
"fileDeleteDelayMs": "string",
"flushMessages": "string",
"flushMs": "string",
"minCompactionLagMs": "string",
"retentionBytes": "string",
"retentionMs": "string",
"maxMessageBytes": "string",
"minInsyncReplicas": "string",
"segmentBytes": "string",
"preallocate": "boolean"
},
"topicConfig_3": {
"cleanupPolicy": "string",
"compressionType": "string",
"deleteRetentionMs": "string",
"fileDeleteDelayMs": "string",
"flushMessages": "string",
"flushMs": "string",
"minCompactionLagMs": "string",
"retentionBytes": "string",
"retentionMs": "string",
"maxMessageBytes": "string",
"minInsyncReplicas": "string",
"segmentBytes": "string",
"preallocate": "boolean"
}
// end of the list of possible fields
}
// end of the list of possible fields
}
An Operation resource. For more information, see Operation.
|
Field |
Description |
|
id |
string ID of the operation. |
|
description |
string Description of the operation. 0-256 characters long. |
|
createdAt |
string (date-time) Creation timestamp. String in RFC3339 To work with values in this field, use the APIs described in the |
|
createdBy |
string ID of the user or service account who initiated the operation. |
|
modifiedAt |
string (date-time) The time when the Operation resource was last modified. String in RFC3339 To work with values in this field, use the APIs described in the |
|
done |
boolean If the value is |
|
metadata |
Service-specific metadata associated with the operation. |
|
error |
The error result of the operation in case of failure or cancellation. Includes only one of the fields The operation result. |
|
response |
The normal response of the operation in case of success. Includes only one of the fields The operation result. |
CreateTopicMetadata
|
Field |
Description |
|
clusterId |
string ID of the Apache Kafka® cluster where a topic is being created. |
|
topicName |
string Required field. Name of the Kafka topic that is being created. |
Status
The error result of the operation in case of failure or cancellation.
|
Field |
Description |
|
code |
integer (int32) Error code. An enum value of google.rpc.Code |
|
message |
string An error message. |
|
details[] |
object A list of messages that carry the error details. |
Topic
An Kafka topic.
For more information, see the Concepts -> Topics and partitions section of the documentation.
|
Field |
Description |
|
name |
string Name of the topic. |
|
clusterId |
string ID of an Apache Kafka® cluster that the topic belongs to. To get the Apache Kafka® cluster ID, make a ClusterService.List request. |
|
partitions |
string (int64) The number of the topic's partitions. |
|
replicationFactor |
string (int64) Amount of data copies (replicas) for the topic in the cluster. |
|
topicConfig_2_8 |
Includes only one of the fields User-defined settings for the topic. |
|
topicConfig_3 |
Includes only one of the fields User-defined settings for the topic. |
TopicConfig2_8
A topic settings for 2.8
|
Field |
Description |
|
cleanupPolicy |
enum (CleanupPolicy) Retention policy to use on old log messages.
|
|
compressionType |
enum (CompressionType) The compression type for a given topic.
|
|
deleteRetentionMs |
string (int64) The amount of time in milliseconds to retain delete tombstone markers for log compacted topics. |
|
fileDeleteDelayMs |
string (int64) The time to wait before deleting a file from the filesystem. |
|
flushMessages |
string (int64) The number of messages accumulated on a log partition before messages are flushed to disk. This setting overrides the cluster-level KafkaConfig2_8.logFlushIntervalMessages setting on the topic level. |
|
flushMs |
string (int64) The maximum time in milliseconds that a message in the topic is kept in memory before flushed to disk. This setting overrides the cluster-level KafkaConfig2_8.logFlushIntervalMs setting on the topic level. |
|
minCompactionLagMs |
string (int64) The minimum time in milliseconds a message will remain uncompacted in the log. |
|
retentionBytes |
string (int64) The maximum size a partition can grow to before Kafka will discard old log segments to free up space if the This setting overrides the cluster-level KafkaConfig2_8.logRetentionBytes setting on the topic level. |
|
retentionMs |
string (int64) The number of milliseconds to keep a log segment's file before deleting it. This setting overrides the cluster-level KafkaConfig2_8.logRetentionMs setting on the topic level. |
|
maxMessageBytes |
string (int64) The largest record batch size allowed in topic. |
|
minInsyncReplicas |
string (int64) This configuration specifies the minimum number of replicas that must acknowledge a write to topic for the write |
|
segmentBytes |
string (int64) This configuration controls the segment file size for the log. Retention and cleaning is always done a file This setting overrides the cluster-level KafkaConfig2_8.logSegmentBytes setting on the topic level. |
|
preallocate |
boolean True if we should preallocate the file on disk when creating a new log segment. This setting overrides the cluster-level KafkaConfig2_8.logPreallocate setting on the topic level. |
TopicConfig3
A topic settings for 3.x
|
Field |
Description |
|
cleanupPolicy |
enum (CleanupPolicy) Retention policy to use on old log messages.
|
|
compressionType |
enum (CompressionType) The compression type for a given topic.
|
|
deleteRetentionMs |
string (int64) The amount of time in milliseconds to retain delete tombstone markers for log compacted topics. |
|
fileDeleteDelayMs |
string (int64) The time to wait before deleting a file from the filesystem. |
|
flushMessages |
string (int64) The number of messages accumulated on a log partition before messages are flushed to disk. This setting overrides the cluster-level KafkaConfig3.logFlushIntervalMessages setting on the topic level. |
|
flushMs |
string (int64) The maximum time in milliseconds that a message in the topic is kept in memory before flushed to disk. This setting overrides the cluster-level KafkaConfig3.logFlushIntervalMs setting on the topic level. |
|
minCompactionLagMs |
string (int64) The minimum time in milliseconds a message will remain uncompacted in the log. |
|
retentionBytes |
string (int64) The maximum size a partition can grow to before Kafka will discard old log segments to free up space if the This setting overrides the cluster-level KafkaConfig3.logRetentionBytes setting on the topic level. |
|
retentionMs |
string (int64) The number of milliseconds to keep a log segment's file before deleting it. This setting overrides the cluster-level KafkaConfig3.logRetentionMs setting on the topic level. |
|
maxMessageBytes |
string (int64) The largest record batch size allowed in topic. |
|
minInsyncReplicas |
string (int64) This configuration specifies the minimum number of replicas that must acknowledge a write to topic for the write |
|
segmentBytes |
string (int64) This configuration controls the segment file size for the log. Retention and cleaning is always done a file This setting overrides the cluster-level KafkaConfig3.logSegmentBytes setting on the topic level. |
|
preallocate |
boolean True if we should preallocate the file on disk when creating a new log segment. This setting overrides the cluster-level KafkaConfig3.logPreallocate setting on the topic level. |