
Slack StopStream
CertifiedStop a Slack stream
Slack StopStream
Stop a Slack stream
Finalizes a streaming message started with StartStream; no further appends are allowed after this. Optional final markdown, blocks, or metadata can be included. Requires chat: write.
type: io.kestra.plugin.slack.app.chats.StopStreamExamples
Stop a stream with final message
id: slack_stop_stream
namespace: company.team
tasks:
- id: start_stream
type: io.kestra.plugin.slack.app.chats.StartStream
token: "{{ secret('SLACK_TOKEN') }}"
channel: "#general"
markdownText: "Processing workflow..."
- id: append_stream
type: io.kestra.plugin.slack.app.chats.AppendStream
token: "{{ secret('SLACK_TOKEN') }}"
channel: "{{ outputs.start_stream.channel }}"
timestamp: "{{ outputs.start_stream.timestamp }}"
markdownText: "\\nStep completed"
- id: stop_stream
type: io.kestra.plugin.slack.app.chats.StopStream
token: "{{ secret('SLACK_TOKEN') }}"
channel: "{{ outputs.start_stream.channel }}"
timestamp: "{{ outputs.start_stream.timestamp }}"
markdownText: "\\n✅ All done!"
Complete stream workflow
id: slack_complete_stream
namespace: company.team
tasks:
- id: start_stream
type: io.kestra.plugin.slack.app.chats.StartStream
token: "{{ secret('SLACK_TOKEN') }}"
channel: "#general"
markdownText: "Starting data processing"
- id: process_data
type: io.kestra.plugin.core.flow.Sleep
duration: PT5S
- id: append_result
type: io.kestra.plugin.slack.app.chats.AppendStream
token: "{{ secret('SLACK_TOKEN') }}"
channel: "{{ outputs.start_stream.channel }}"
timestamp: "{{ outputs.start_stream.timestamp }}"
markdownText: "\\nProcessed 1000 records"
- id: stop_stream
type: io.kestra.plugin.slack.app.chats.StopStream
token: "{{ secret('SLACK_TOKEN') }}"
channel: "{{ outputs.start_stream.channel }}"
timestamp: "{{ outputs.start_stream.timestamp }}"
markdownText: "\\nProcessing completed at {{ now() }}"
Stop stream with blocks
id: slack_stop_stream_blocks
namespace: company.team
tasks:
- id: start_stream
type: io.kestra.plugin.slack.app.chats.StartStream
token: "{{ secret('SLACK_TOKEN') }}"
channel: "#general"
markdownText: "Running workflow..."
- id: stop_stream
type: io.kestra.plugin.slack.app.chats.StopStream
token: "{{ secret('SLACK_TOKEN') }}"
channel: "{{ outputs.start_stream.channel }}"
timestamp: "{{ outputs.start_stream.timestamp }}"
markdownText: "\\nWorkflow completed"
blocks: |
[
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Status:* :white_check_mark: Completed"
}
}
]
Properties
channel *string
Stream channel
Channel ID or name where the stream was started.
timestamp *string
Stream message timestamp
Slack ts returned by StartStream.
token *string
Slack token
assets
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.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset 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.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150blocks string
Final Block Kit blocks
JSON array string of blocks appended before closing.
markdownText string
Final markdown content
Optional markdown appended before closing the stream.
metadata string
Final message metadata
JSON object string attached to the closing message.
Outputs
channel string
Stream channel
May be null if not returned by the Slack API.
timestamp string
Stream message timestamp
May be null if not returned by the Slack API.