Cloud and BYOC for Orca Agent Engine are in Private Preview — request an invite
Docs
CLI

ork sources and sinks

Manage Pulsar IO sources and sinks in your Orca Workspace with the ork sources and ork sinks commands.

The ork sources and ork sinks commands manage Pulsar IO connectors through the Workspace registry API. A source ingests data from an external system into a Pulsar topic; a sink writes data from a Pulsar topic to an external system. The two command groups mirror each other, so they are documented together. These commands require the cloud.sn.io extension and are unavailable on a self-hosted engine.

Commands read --registry-url / ORCA_REGISTRY_URL and exactly one credential: --access-token / ORCA_ACCESS_TOKEN or --api-key / ORCA_API_KEY. See ork CLI for setup.

ork sources                         ork sinks
├── list                             ├── list
├── get <name>                       ├── get <name>
├── available-sources                ├── available-sinks
├── config-definition <name>         ├── config-definition <name>
├── create                           ├── create
├── update <name>                    ├── update <name>
├── delete <name>                    ├── delete <name>
├── start <name> [instance-id]       ├── start <name> [instance-id]
├── stop <name> [instance-id]        ├── stop <name> [instance-id]
├── restart <name> [instance-id]     ├── restart <name> [instance-id]
└── status <name> [instance-id]      └── status <name> [instance-id]

ork sources

Manage Pulsar IO Sources.

ork sources list

List the source names in the Workspace.

ork sources list [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.
ork sources list -o json \
  --registry-url "$ORCA_REGISTRY_URL" \
  --access-token "$ORCA_ACCESS_TOKEN"

ork sources get

Get one source's configuration by name.

ork sources get [name] [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.

ork sources available-sources

List the built-in source connectors available in the catalog, with their name, description, class, and config class.

ork sources available-sources [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.
ork sources available-sources

ork sources config-definition

Get the configuration field definitions for a built-in source connector.

ork sources config-definition [name] [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.
ork sources config-definition kafka

ork sources create

Create a source. Provide a package - either a built-in --source-type or a NAR via --archive (these are mutually exclusive) - along with the source's identity and destination topic. You can supply settings through flags, a --source-config-file, or both.

ork sources create [flags]

A package source is required on create: specify --source-type, --archive, or a config file that defines archive. The connection can come from --connection, --use-connection, or the source config file's connection field.

FlagShorthandDefaultDescription
--tenantpublicThe tenant of the source.
--namespacedefaultThe namespace of the source.
--nameThe name of the source.
--source-type-tThe built-in source type.
--archive-aPath or URL to the source NAR package.
--classnameThe source class name when archive is file- or URL-based.
--source-config-filePath to a source config YAML file.
--destination-topic-nameThe destination Pulsar topic.
--deserialization-classnameThe SerDe class name for the source.
--schema-typeThe schema type for messages emitted from the source.
--processing-guaranteesProcessing guarantees applied to the source.
--producer-configCustom producer configuration as JSON.
--batch-builderBatch builder strategy.
--log-topicTopic for source logs.
--source-configSource config as JSON.
--batch-source-configBatch source config as JSON.
--parallelism0The source parallelism factor. Defaults to 1 when unset.
--cpu0CPU cores per source instance.
--ram0RAM per source instance.
--disk0Disk per source instance.
--custom-runtime-optionsCustom runtime options.
--secretsSource secrets as JSON.
--connectionConnection name used by the source.
--use-connectionfalseInteractively select a connection for the source.
--sn-service-accountService account identity used by the source.
ork sources create \
  --registry-url "$ORCA_REGISTRY_URL" \
  --access-token "$ORCA_ACCESS_TOKEN" \
  --name kafka-ingest \
  --source-type kafka \
  --destination-topic-name persistent://public/default/events \
  --connection my-kafka \
  --parallelism 1

ork sources update

Update an existing source. The source name is a positional argument; if you also pass --name, it must match. Pass only the flags you want to change.

ork sources update [name] [flags]

update accepts every flag from create except --connection and --use-connection, which are create-only because a source connection cannot change during an update. It also accepts:

FlagDefaultDescription
--update-auth-datafalseWhether to update the auth data.
ork sources update kafka-ingest \
  --registry-url "$ORCA_REGISTRY_URL" \
  --access-token "$ORCA_ACCESS_TOKEN" \
  --parallelism 2

ork sources delete, start, stop, restart

Delete a source or control its runtime lifecycle. Lifecycle commands accept an optional instance ID; omit it to operate on every instance.

ork sources delete [name]
ork sources start [name] [instance-id]
ork sources stop [name] [instance-id]
ork sources restart [name] [instance-id]

ork sources status

Get a source's runtime status, including per-instance running state, restart counts, messages written, and errors.

ork sources status [name] [instance-id] [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.
ork sources status kafka-ingest -o json

ork sinks

Manage Pulsar IO Sinks.

ork sinks list

List the sink names in the Workspace.

ork sinks list [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.

ork sinks get

Get one sink's configuration by name.

ork sinks get [name] [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.

ork sinks available-sinks

List the built-in sink connectors available in the catalog.

ork sinks available-sinks [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.

ork sinks config-definition

Get the configuration field definitions for a built-in sink connector.

ork sinks config-definition [name] [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.
ork sinks config-definition kafka

ork sinks create

Create a sink. Provide a package - either a built-in --sink-type or a NAR via --archive (mutually exclusive) - along with the sink's identity and input topics.

ork sinks create [flags]

A package is required on create: specify --sink-type, --archive, or a config file that defines archive. The connection can come from --connection, --use-connection, or the sink config file's connection field.

FlagShorthandDefaultDescription
--tenantpublicThe tenant of the sink.
--namespacedefaultThe namespace of the sink.
--nameThe name of the sink.
--sink-type-tThe built-in sink type.
--archive-aPath or URL to the sink NAR package.
--classnameThe sink class name when archive is file- or URL-based.
--sink-config-filePath to a sink config YAML file.
--sink-configSink config as JSON.
--log-topicTopic for sink logs.
--inputs-iComma-separated input topics.
--topics-patternTopic pattern to consume from.
--subs-nameSpecific subscription name for the input-topic consumer.
--subs-positionSubscription position to consume from.
--custom-serde-inputsMap of input topics to SerDe class names as JSON.
--custom-schema-inputsMap of input topics to schema type as JSON.
--input-specsMap of inputs to custom configuration as JSON.
--processing-guaranteesProcessing guarantees applied to the sink.
--retain-orderingfalseConsume and process messages in order.
--retain-key-orderingfalseConsume and process messages in key order.
--auto-ackfalseEnable auto ack.
--cleanup-subscriptiontrueDelete the subscription when the sink is deleted.
--max-redeliver-count0Maximum redelivery count before dead letter.
--dead-letter-topicDead letter topic.
--negative-ack-redelivery-delay-ms0Negative ack redelivery delay in milliseconds.
--timeout-ms0Sink timeout in milliseconds.
--parallelism0Parallelism factor. Defaults to 1 when unset.
--cpu0CPU cores per sink instance.
--ram0RAM per sink instance.
--disk0Disk per sink instance.
--transform-functionTransform function name.
--transform-function-classnameTransform function class name.
--transform-function-configTransform function config.
--custom-runtime-optionsCustom runtime options.
--secretsSink secrets as JSON.
--connectionConnection name used by the sink.
--use-connectionfalseInteractively select a connection for the sink.
--sn-service-accountService account identity used by the sink.
ork sinks create \
  --registry-url "$ORCA_REGISTRY_URL" \
  --access-token "$ORCA_ACCESS_TOKEN" \
  --name s3-export \
  --sink-type cloud-storage \
  --inputs persistent://public/default/events \
  --connection my-storage \
  --parallelism 1

ork sinks update

Update an existing sink. The sink name is a positional argument; if you also pass --name, it must match. Pass only the flags you want to change.

ork sinks update [name] [flags]

update accepts every flag from create except --connection and --use-connection, which are create-only because a sink connection cannot change during an update. It also accepts:

FlagDefaultDescription
--update-auth-datafalseWhether to update the auth data.

On ork sinks update, the --auto-ack, --processing-guarantees, and --retain-ordering flags are deprecated because these values are immutable. The command preserves the existing values regardless of what you pass.

ork sinks update s3-export \
  --registry-url "$ORCA_REGISTRY_URL" \
  --access-token "$ORCA_ACCESS_TOKEN" \
  --parallelism 2

ork sinks delete, start, stop, restart

Delete a sink or control its runtime lifecycle. Lifecycle commands accept an optional instance ID; omit it to operate on every instance.

ork sinks delete [name]
ork sinks start [name] [instance-id]
ork sinks stop [name] [instance-id]
ork sinks restart [name] [instance-id]

ork sinks status

Get a sink's runtime status, including per-instance running state, restart counts, messages written to the sink, and errors.

ork sinks status [name] [instance-id] [flags]
FlagShorthandDefaultDescription
--output-otextOutput format: text, json, or yaml.
ork sinks status s3-export -o json

What's next

On this page