Weaviate BatchCreate

Weaviate BatchCreate

Certified

Batch insert Weaviate objects

Loads multiple objects into a class from a Kestra ION file or an inline list. Each object gets a generated UUID. If the class is missing, Weaviate auto-schema (if enabled) will create it; otherwise the call fails.

yaml
type: io.kestra.plugin.weaviate.BatchCreate

Send batch object creation request to a Weaviate database.

yaml
id: weaviate_batch_load
namespace: company.team

tasks:
  - id: batch_load
    type: io.kestra.plugin.weaviate.BatchCreate
    url: "https://demo-cluster-id.weaviate.network"
    apiKey: "{{ secret('WEAVIATE_API_KEY') }}"
    className: WeaviateDemo
    objects:
      - textField: "some text"
        numField: 24
      - textField: "another text"
        numField: 42

Send batch object creation request to a Weaviate database using an ION input file e.g. passed from output of another task.

yaml
id: weaviate_batch_insert
namespace: company.team

tasks:
  - id: extract
    type: io.kestra.plugin.core.http.Download
    uri: https://huggingface.co/datasets/kestra/datasets/raw/main/ion/ingest.ion

  - id: batch_insert
    type: io.kestra.plugin.weaviate.BatchCreate
    url: "https://demo-cluster-id.weaviate.network"
    apiKey: "{{ secret('WEAVIATE_API_KEY') }}"
    className: Titles
    objects: "{{ outputs.extract.uri }}"
Properties

Objects to insert with properties

Either a Kestra storage URI to an ION array or an inline list of maps. Each entry becomes one Weaviate object.

Min length1

Configure Weaviate endpoint URL

Full http or https host for the Weaviate cluster, including port when not default. Example: localhost: 8080 or https://cluster-id.weaviate.network

Provide managed cluster API key

Optional bearer-style key for hosted Weaviate; if omitted, requests use anonymous access.

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

Class name where you want to insert data

Set custom request headers

Key/value headers appended to every call, e.g. extra auth tokens for upstream services. The plugin also sends an X-Weaviate-Client-Integration header identifying itself; setting that key here overrides it.