
S2 Append
CertifiedAppend records to an S2 stream
S2 Append
Append records to an S2 stream
Appends records atomically to an S2 stream.
type: io.kestra.plugin.s2.AppendExamples
Append records to a stream
id: append_records
namespace: company.team
tasks:
- id: append
type: io.kestra.plugin.s2.Append
accessToken: "{{ secret('S2_ACCESS_TOKEN') }}"
basin: my-basin
stream: orders
from:
- body: "order created"
Properties
accessToken *string
S2 access token
Access token used to authenticate with S2
basin *string
S2 basin
S2 basin containing the streams
from *stringarray
Structured data items, either as a map, a list of map, a URI, or a JSON string.
Structured data items can be defined in the following ways:
- A single item as a map (a document).
- A list of items as a list of maps (a list of documents).
- A URI, supported schemes are
kestrafor internal storage files,filefor host local files, andnsfilefor namespace files. - A JSON String that will then be serialized either as a single item or a list of items.
io.kestra.plugin.s2.Append-Record
Record body
Body of the S2 record.
Record headers
Headers attached to the S2 record.
Timestamp
Optional record timestamp.
stream *string
Stream
Name of the S2 stream to append records to.
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
{}1150basinEndpoint string
https://{basin}.b.s2.dev/v1Basin endpoint
S2 basin API endpoint. The {basin} placeholder is replaced by the basin name. When the endpoint has no placeholder, the basin is sent in the S2-Basin header, which is how a custom endpoint such as s2-lite is addressed.
Outputs
end integer
End sequence number
Sequence number just after the last appended record.
start integer
Start sequence number
Sequence number assigned to the first appended record.
tail integer
Tail sequence number
Sequence number that will be assigned to the next record on the stream.