Confluent · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Confluent Cloud Cluster Linking (v3) API
21 actions
21 updates
phrasing
extends
openapi/confluent-cluster-linking-v3-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Confluent's API. It is a proposal applied on top of the contract, not a document Confluent publishes.
What the actions change
x-apievangelist-phrasing
Targets 21 · first 16 shown; the file carries all of them
$.info
$.paths['/kafka/v3/clusters/{cluster_id}/links'].get
$.paths['/kafka/v3/clusters/{cluster_id}/links'].post
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}'].get
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}'].delete
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs'].get
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs/{config_name}'].get
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs/{config_name}'].put
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs/{config_name}'].delete
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs:alter'].put
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors'].get
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors'].post
$.paths['/kafka/v3/clusters/{cluster_id}/links/-/mirrors'].get
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors/{mirror_topic_name}'].get
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:promote'].post
$.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:failover'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Confluent Cloud Cluster Linking (v3) API
version: 1.0.0
extends: openapi/confluent-cluster-linking-v3-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 20
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links'].get
update:
x-apievangelist-phrasing:
intent: List cluster links on a destination cluster
effect: read
questions:
- Which cluster links exist on my destination Kafka cluster?
- Can I see every cluster link replicating into this cluster at once?
instructions:
- text: List all cluster links on cluster {cluster_id}.
slots:
cluster_id: path.cluster_id
- text: Show me the cluster links defined on destination cluster {cluster_id}.
slots:
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links'].post
update:
x-apievangelist-phrasing:
intent: Create a cluster link between Kafka clusters
effect: write
questions:
- How do I set up a cluster link to replicate data from a source Kafka cluster in Confluent?
- Can I dry-run a cluster link creation to validate it before it is actually created?
- What security settings does a new cluster link need for the source cluster?
instructions:
- text: Create a cluster link named {link_name} on cluster {cluster_id} from source cluster {source_cluster_id}.
slots:
link_name: query.link_name
cluster_id: path.cluster_id
source_cluster_id: requestBody.source_cluster_id
- text: Validate, without creating it, a cluster link {link_name} on cluster {cluster_id}.
slots:
link_name: query.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}'].get
update:
x-apievangelist-phrasing:
intent: Describe a cluster link
effect: read
questions:
- What is the current state of a particular cluster link?
- Can I see the task status for one cluster link?
instructions:
- text: Describe cluster link {link_name} on cluster {cluster_id}.
slots:
link_name: path.link_name
cluster_id: path.cluster_id
- text: Show cluster link {link_name} on cluster {cluster_id} including its tasks.
slots:
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a cluster link
effect: destructive
questions:
- How do I remove a cluster link I no longer need?
- Can I force-delete a cluster link that still has mirror topics?
instructions:
- text: Delete cluster link {link_name} from cluster {cluster_id}.
slots:
link_name: path.link_name
cluster_id: path.cluster_id
- text: Force delete cluster link {link_name} on cluster {cluster_id}.
slots:
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs'].get
update:
x-apievangelist-phrasing:
intent: List all configs of a cluster link
effect: read
questions:
- What configuration settings are applied to my cluster link?
- Can I dump every config value for one cluster link?
instructions:
- text: List all configs of cluster link {link_name} on cluster {cluster_id}.
slots:
link_name: path.link_name
cluster_id: path.cluster_id
- text: Show every setting on link {link_name} in cluster {cluster_id}.
slots:
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs/{config_name}'].get
update:
x-apievangelist-phrasing:
intent: Get one config value on a cluster link
effect: read
questions:
- What value is a single named config set to on my cluster link?
- Is a specific cluster link setting still at its default?
instructions:
- text: Get config {config_name} on cluster link {link_name} in cluster {cluster_id}.
slots:
config_name: path.config_name
link_name: path.link_name
cluster_id: path.cluster_id
- text: Tell me the current value of {config_name} for link {link_name} on cluster {cluster_id}.
slots:
config_name: path.config_name
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs/{config_name}'].put
update:
x-apievangelist-phrasing:
intent: Change one config on a cluster link
effect: write
questions:
- How do I change a single setting on an existing cluster link?
- Can I alter one cluster link config without touching the others?
instructions:
- text: Set config {config_name} to {value} on cluster link {link_name} in cluster {cluster_id}.
slots:
config_name: path.config_name
value: requestBody.value
link_name: path.link_name
cluster_id: path.cluster_id
- text: Update the {config_name} setting of link {link_name} on cluster {cluster_id} to {value}.
slots:
config_name: path.config_name
value: requestBody.value
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs/{config_name}'].delete
update:
x-apievangelist-phrasing:
intent: Reset a cluster link config to its default
effect: destructive
questions:
- How do I revert a cluster link setting back to its default value?
- Can I undo an override I made on a cluster link config?
instructions:
- text: Reset config {config_name} on cluster link {link_name} in cluster {cluster_id} to default.
slots:
config_name: path.config_name
link_name: path.link_name
cluster_id: path.cluster_id
- text: Remove my override of {config_name} on link {link_name} in cluster {cluster_id}.
slots:
config_name: path.config_name
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/configs:alter'].put
update:
x-apievangelist-phrasing:
intent: Alter several cluster link configs at once
effect: write
questions:
- Can I change multiple cluster link settings in a single request?
- Is there a way to validate a batch of cluster link config changes before applying them?
instructions:
- text: Apply these config changes {data} to cluster link {link_name} on cluster {cluster_id} in one batch.
slots:
data: requestBody.data
link_name: path.link_name
cluster_id: path.cluster_id
- text: Validate only, without applying, the batch config changes {data} for link {link_name} on cluster {cluster_id}.
slots:
data: requestBody.data
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors'].get
update:
x-apievangelist-phrasing:
intent: List mirror topics under one cluster link
effect: read
questions:
- Which mirror topics belong to a specific cluster link?
- Can I filter a link's mirror topics by mirror status, like paused ones?
instructions:
- text: List mirror topics under link {link_name} on cluster {cluster_id}.
slots:
link_name: path.link_name
cluster_id: path.cluster_id
- text: Show mirror topics on link {link_name} in cluster {cluster_id} with status {mirror_status}.
slots:
link_name: path.link_name
cluster_id: path.cluster_id
mirror_status: query.mirror_status
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors'].post
update:
x-apievangelist-phrasing:
intent: Create a mirror topic on a cluster link
effect: write
questions:
- How do I start mirroring a source topic into my destination cluster?
- Can I give the mirror topic a different name than the source topic?
instructions:
- text: Mirror source topic {source_topic_name} over link {link_name} into cluster {cluster_id}.
slots:
source_topic_name: requestBody.source_topic_name
link_name: path.link_name
cluster_id: path.cluster_id
- text: Create mirror topic {mirror_topic_name} from {source_topic_name} on link {link_name} in cluster {cluster_id}.
slots:
mirror_topic_name: requestBody.mirror_topic_name
source_topic_name: requestBody.source_topic_name
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/-/mirrors'].get
update:
x-apievangelist-phrasing:
intent: List all mirror topics across a cluster's links
effect: read
questions:
- Which mirror topics exist in my cluster across every cluster link?
- Can I find all stopped mirror topics in a cluster regardless of link?
instructions:
- text: List every mirror topic in cluster {cluster_id} across all links.
slots:
cluster_id: path.cluster_id
- text: Show all mirror topics in cluster {cluster_id} whose status is {mirror_status}, on any link.
slots:
cluster_id: path.cluster_id
mirror_status: query.mirror_status
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors/{mirror_topic_name}'].get
update:
x-apievangelist-phrasing:
intent: Describe a single mirror topic
effect: read
questions:
- What is the mirroring status and lag of one particular mirror topic?
- Can I see state transition errors for a mirror topic?
instructions:
- text: Describe mirror topic {mirror_topic_name} on link {link_name} in cluster {cluster_id}.
slots:
mirror_topic_name: path.mirror_topic_name
link_name: path.link_name
cluster_id: path.cluster_id
- text: Show state transition errors for mirror topic {mirror_topic_name} on link {link_name}, cluster {cluster_id}.
slots:
mirror_topic_name: path.mirror_topic_name
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:promote'].post
update:
x-apievangelist-phrasing:
intent: Promote mirror topics to writable topics
effect: destructive
questions:
- How do I promote mirror topics so producers can write to them on the destination?
- Can I promote mirror topics by name pattern instead of listing each one?
instructions:
- text: Promote mirror topics {mirror_topic_names} on link {link_name} in cluster {cluster_id}.
slots:
mirror_topic_names: requestBody.mirror_topic_names
link_name: path.link_name
cluster_id: path.cluster_id
- text: Promote every mirror topic matching {mirror_topic_name_pattern} on link {link_name}, cluster {cluster_id}.
slots:
mirror_topic_name_pattern: requestBody.mirror_topic_name_pattern
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:failover'].post
update:
x-apievangelist-phrasing:
intent: Fail over mirror topics to the destination
effect: destructive
questions:
- What do I call to fail over mirror topics when the source cluster is down?
- Can I test a mirror topic failover with validate-only first?
instructions:
- text: Fail over mirror topics {mirror_topic_names} on link {link_name} in cluster {cluster_id}.
slots:
mirror_topic_names: requestBody.mirror_topic_names
link_name: path.link_name
cluster_id: path.cluster_id
- text: Run a failover for mirror topics matching {mirror_topic_name_pattern} on link {link_name}, cluster {cluster_id}.
slots:
mirror_topic_name_pattern: requestBody.mirror_topic_name_pattern
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:pause'].post
update:
x-apievangelist-phrasing:
intent: Pause mirroring for mirror topics
effect: write
questions:
- How do I temporarily stop replication on some mirror topics?
- Can I pause a group of mirror topics that match a pattern?
instructions:
- text: Pause mirror topics {mirror_topic_names} on link {link_name} in cluster {cluster_id}.
slots:
mirror_topic_names: requestBody.mirror_topic_names
link_name: path.link_name
cluster_id: path.cluster_id
- text: Pause mirroring for topics matching {mirror_topic_name_pattern} on link {link_name}, cluster {cluster_id}.
slots:
mirror_topic_name_pattern: requestBody.mirror_topic_name_pattern
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:resume'].post
update:
x-apievangelist-phrasing:
intent: Resume mirroring for paused mirror topics
effect: write
questions:
- How do I restart replication on mirror topics I paused earlier?
- Can I resume paused mirror topics by name pattern?
instructions:
- text: Resume mirror topics {mirror_topic_names} on link {link_name} in cluster {cluster_id}.
slots:
mirror_topic_names: requestBody.mirror_topic_names
link_name: path.link_name
cluster_id: path.cluster_id
- text: Resume the paused mirror topics matching {mirror_topic_name_pattern} on link {link_name}, cluster {cluster_id}.
slots:
mirror_topic_name_pattern: requestBody.mirror_topic_name_pattern
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:reverse-and-start-mirror'].post
update:
x-apievangelist-phrasing:
intent: Reverse mirror direction and start the remote mirror
effect: write
questions:
- Can I reverse replication so the remote topic mirrors from my local one and keeps running?
- What do I use to fail back by reversing mirror topics and starting the remote side?
instructions:
- text: Reverse local mirror topics {mirror_topic_names} on link {link_name} in cluster {cluster_id} and start the remote mirror.
slots:
mirror_topic_names: requestBody.mirror_topic_names
link_name: path.link_name
cluster_id: path.cluster_id
- text: Reverse-and-start mirroring for topics matching {mirror_topic_name_pattern} on link {link_name}, cluster {cluster_id}.
slots:
mirror_topic_name_pattern: requestBody.mirror_topic_name_pattern
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:reverse-and-pause-mirror'].post
update:
x-apievangelist-phrasing:
intent: Reverse mirror direction and pause the remote mirror
effect: write
questions:
- Can I reverse mirror topics but leave the remote mirror paused?
- Which call reverses replication direction while keeping the remote side paused?
instructions:
- text: Reverse local mirror topics {mirror_topic_names} on link {link_name} in cluster {cluster_id} and pause the remote mirror.
slots:
mirror_topic_names: requestBody.mirror_topic_names
link_name: path.link_name
cluster_id: path.cluster_id
- text: Reverse-and-pause mirroring for topics matching {mirror_topic_name_pattern} on link {link_name}, cluster {cluster_id}.
slots:
mirror_topic_name_pattern: requestBody.mirror_topic_name_pattern
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'
- target: $.paths['/kafka/v3/clusters/{cluster_id}/links/{link_name}/mirrors:truncate-and-restore'].post
update:
x-apievangelist-phrasing:
intent: Truncate local topics and restore mirroring
effect: destructive
questions:
- How do I truncate my local topic to the remote stopped mirror's end offsets and mirror again?
- Can I see partition-level truncation details when restoring a mirror?
instructions:
- text: Truncate and restore mirroring for topics {mirror_topic_names} on link {link_name} in cluster {cluster_id}.
slots:
mirror_topic_names: requestBody.mirror_topic_names
link_name: path.link_name
cluster_id: path.cluster_id
- text: Truncate topics matching {mirror_topic_name_pattern} to the remote end offsets and resume mirroring on link {link_name}, cluster {cluster_id}.
slots:
mirror_topic_name_pattern: requestBody.mirror_topic_name_pattern
link_name: path.link_name
cluster_id: path.cluster_id
method: generated
generated: '2026-09-26'