category: Messaging and Conferencing provider: Open Source commonfields: id: KafkaV3 version: -1 configuration: - display: CSV list of Kafka brokers to connect to, e.g., 172.16.20.207:9092,172.16.20.234:9093 name: brokers required: true type: 0 section: Connect - display: Consumer group ID additionalinfo: This group ID will be used when fetching incidents and preforming consumer commands. If not set the group id 'xsoar_group' will be used. name: group_id type: 0 required: false section: Collect - display: Use TLS for connection name: use_ssl type: 8 required: false section: Connect - display: Use SASL PLAIN for connection (using SSL) name: use_sasl type: 8 section: Connect - display: Trust any certificate (not secure) name: insecure type: 8 required: false section: Connect - display: CA certificate of Kafka server (.cer) name: ca_cert type: 12 required: false section: Connect - display: Client certificate (.cer) name: client_cert type: 12 required: false section: Connect - display: Client certificate key (.key) name: client_cert_key type: 14 required: false section: Connect - displaypassword: Client certificate key password (if required) hiddenusername: true name: additional_password type: 9 required: false section: Connect - display: SASL PLAIN Username name: credentials type: 9 displaypassword: SASL PLAIN Password required: false section: Connect - display: Topic to fetch incidents from (Required for fetch incidents) name: topic type: 0 required: false section: Collect - display: CSV list of partitions to fetch messages from name: partition type: 0 required: false section: Collect - additionalinfo: The initial offset to start fetching from, not including the value set (e.g., if 3 is set, the first event that will be fetched will be from offset 4). If you want to start from the earliest or latest, type in 'earliest' or 'latest'. display: Offset to fetch messages from (Exclusive) name: first_fetch type: 0 required: false section: Collect - defaultvalue: '50' display: Maximum number of messages to fetch name: max_fetch type: 0 required: false section: Collect - display: Stop consuming upon timeout additionalinfo: When fetching a significant number of messages (100+), it's advisable to halt message consumption upon timeout. This ensures that the fetch terminates if no messages are received after a specified duration, instead of requesting messages until reaching the maximum number of messages to fetch. name: stop_consuming_upon_timeout type: 8 advanced: true required: false section: Collect - display: Fetch incidents name: isFetch type: 8 required: false section: Collect - display: Incident type name: incidentType type: 13 required: false section: Collect - display: Incidents Fetch Interval name: incidentFetchInterval defaultvalue: '1' required: false type: 19 section: Collect advanced: true - additionalinfo: |- The maximum number of message bytes to retrieve in each attempted fetch request. Should be in multiples of 1024. If the fetching process takes a long time, consider increasing this value. Default is '1048576'. defaultvalue: '1048576' display: Maximum number of bytes per message name: max_bytes_per_message type: 0 required: false section: Collect - display: Schema Registry URL name: schema_registry_url required: false type: 0 section: Connect - display: Schema Registry Username displaypassword: Schema Registry Password name: schema_registry_credentials required: false type: 9 section: Connect description: Kafka is an open source distributed streaming platform. display: Kafka v3 name: KafkaV3 script: commands: - arguments: - auto: PREDEFINED defaultValue: 'true' description: Whether to include the first and last offset for a topic, when printing a list of topics and partitions. name: include_offsets predefined: - 'true' - 'false' description: Prints all topics and their partitions. name: kafka-print-topics outputs: - contextPath: Kafka.Topic.Name description: Kafka topic name. type: String - contextPath: Kafka.Topic.Partitions.ID description: Topic partition ID. type: Number - contextPath: Kafka.Topic.Partitions.EarliestOffset description: Topic partition earliest offset. type: Number - contextPath: Kafka.Topic.Partitions.LatestOffset description: Topic partition latest offset. type: Number - arguments: - description: A topic to publish messages to. name: topic required: true - description: Message value (string). name: value required: true - description: Message partition (number). name: partitioning_key - auto: PREDEFINED description: Value schema type. If not set, no schema is used, and schema-related arguments are ignored. name: value_schema_type predefined: - AVRO - description: Value schema in string format. Used only if `schema_type` is provided and `schema_subject_name` is not. Mutually exclusive with `schema_subject_name`. name: value_schema_str - description: Value schema subject name to retrieve the latest schema version from the registry. Used only if `schema_type` is provided and `schema_str` is not. Mutually exclusive with `schema_str`. name: value_schema_subject_name description: Publishes a message to Kafka. name: kafka-publish-msg - arguments: - description: A topic to get messages from. name: topic required: true - defaultValue: Earliest description: Message offset to filter by. Acceptable values are 'Earliest', 'Latest', or an offest number. name: offset - description: Partition (number). name: partition - description: Poll timeout to consume a message. name: poll_timeout defaultValue: 1.0 description: Consumes a single Kafka message. name: kafka-consume-msg outputs: - contextPath: Kafka.Topic.Name description: Name of the topic. type: string - contextPath: Kafka.Topic.Message.Value description: Value of the message. type: string - contextPath: Kafka.Topic.Message.Offset description: Offset of the value in the topic. type: number - arguments: - description: A topic to fetch partitions for. name: topic required: true description: Fetch partitions for a topic. name: kafka-fetch-partitions outputs: - contextPath: Kafka.Topic.Name description: Name of topic. type: string - contextPath: Kafka.Topic.Partition description: Prints all partitions for a topic. type: number isfetch: true runonce: false script: '-' type: python subtype: python3 dockerimage: demisto/vendors-sdk:1.0.0.10120494 fromversion: 6.1.0 tests: - KafkaV3 Test sectionorder: - Connect - Collect