= dynamic
:type: output
:status: stable
:categories: ["Utility"]



////
     THIS FILE IS AUTOGENERATED!

     To make changes, edit the corresponding source file under:

     https://github.com/redpanda-data/connect/tree/main/internal/impl/<provider>.

     And:

     https://github.com/redpanda-data/connect/tree/main/cmd/tools/docs_gen/templates/plugin.adoc.tmpl
////

// © 2024 Redpanda Data Inc.


component_type_dropdown::[]


A special broker type where the outputs are identified by unique labels and can be created, changed and removed during runtime via a REST API.

```yml
# Config fields, showing default values
output:
  label: ""
  dynamic:
    outputs: {}
    prefix: ""
```

The broker pattern used is always `fan_out`, meaning each message will be delivered to each dynamic output.

== Fields

=== `outputs`

A map of outputs to statically create.


*Type*: `object`

*Default*: `{}`

=== `prefix`

A path prefix for HTTP endpoints that are registered.


*Type*: `string`

*Default*: `""`

== Endpoints

=== GET `/outputs`

Returns a JSON object detailing all dynamic outputs, providing information such as their current uptime and configuration.

=== GET `/outputs/\{id}`

Returns the configuration of an output.

=== POST `/outputs/\{id}`

Creates or updates an output with a configuration provided in the request body (in YAML or JSON format).

=== DELETE `/outputs/\{id}`

Stops and removes an output.

=== GET `/outputs/\{id}/uptime`

Returns the uptime of an output as a duration string (of the form "72h3m0.5s").

