Apache Kafka ConnectorAlterOffsets

Apache Kafka ConnectorAlterOffsets

Certified

Alter a Kafka Connect connector's offsets

Overwrites the connector's offsets with the given offsets value — typically obtained from ConnectorGetOffsets and edited, or built from scratch to skip/replay records.

The connector must be in the STOPPED state for this call to succeed; altering offsets via PATCH /connectors/{name}/offsets is a [KIP-875](https://cwiki.apache.org/confluence/display/KAFKA/KIP-875: +First-class+offsets+support+in+Kafka+Connect) concept only available on Kafka Connect clusters running Kafka 3.6+. This task does not pre-validate the connector's state client-side — it always sends the request and surfaces Connect's error body verbatim (HTTP 400) if the connector isn't STOPPED. Stop the connector first, e.g. with ConnectorUpdateConfig toggling to a stopped state or the Connect PUT /connectors/{name}/stop endpoint. On older clusters that don't support this, delete and recreate the connector instead.

yaml
type: io.kestra.plugin.kafka.ConnectorAlterOffsets

Rewind a source connector's offsets

yaml
id: kafka_connector_alter_offsets
namespace: company.team

tasks:
  - id: alter_offsets
    type: io.kestra.plugin.kafka.ConnectorAlterOffsets
    connectUrl: http://connect:8083
    connectorName: orders_jdbc_source
    offsets:
      - partition:
          table: orders
        offset:
          incrementing: 0
Properties

Kafka Connect REST API base URL

For example http://connect: 8083. Kafka Connect has no dedicated Java admin client — every operation goes through this REST API.

Connector name

SubTypeobject

Offsets to apply

Same shape as ConnectorGetOffsets's offsets output: a list of {partition, offset} entries. The connector must be STOPPED — see the task description.

Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset failure behavior

Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150

Additional HTTP headers

Sent on every request to the Connect REST API. Useful when the worker sits behind a reverse proxy or expects a bearer token, e.g. Authorization: Bearer ....

Basic auth password

Basic auth username

Required together with password when the Connect REST API is protected with HTTP basic auth. Leave both unset to call an unauthenticated worker — no Authorization header is sent in that case.

Connector name

Confirmation message returned by the Connect API