Skip to main content
Version: 22.3

rpk topic produce

Produce records to a topic.

Producing records reads from STDIN, parses input according to --format, and produce records to Redpanda. The input formatter understands a wide variety of formats.

Parsing input operates on either sizes or on delimiters, both of which can be specified in the same formatting options. If using sizes to specify something, the size must come before what it is specifying. Delimiters match on an exact text basis. This command will quit with an error if any input fails to match your specified format.


rpk topic produce [TOPIC] [flags]


Value Type Description
--acksintNumber of acks required for producing (-1=all, 0=none, 1=leader) (default -1)
--allow-auto-topic-creation-Auto-create non-existent topics; requires auto_create_topics_enabled on the broker
--delivery-timeoutduration Per-record delivery timeout, if non-zero, min 1s
-H, --headerstringArray Headers in format key:value to add to each record (repeatable)
-h, --help- Help for produce
-k, --keystringA fixed key to use for each record (parsed input keys take precedence)
-p, --partitionint32Partition to directly produce to, if non-negative (also allows %p parsing to set partitions) (default -1)
-Z, --tombstone- Produce empty values as tombstones
--brokersstringsComma-separated list of broker <ip>:<port> pairs (for example,--brokers ',,'). Alternatively, you may set the REDPANDA_BROKERSenvironment variable with the comma-separated list of broker addresses.
--configstringRedpanda config file, if not set the file will be searched for in the default locations.
--passwordstring SASL password to be used for authentication.
--sasl-mechanismstringThe authentication mechanism to use. Supported values:SCRAM-SHA-256, SCRAM-SHA-512.
--tls-certstringThe certificate to be used for TLS authentication with the broker.
--tls-enabled-Enable TLS for the Kafka API (not necessary if specifying custom certs).
--tls-keystringThe certificate key to be used for TLS authentication with the broker.
--tls-truststorestring The truststore to be used for TLS communication with the broker.
--userstring SASL user to be used for authentication.
-v, --verbose-Enable verbose logging (default false).