Sources
Ingest external data into Pulsar with source connectors in Orca Agent Engine on StreamNative Cloud.
A source connector reads from an external system and writes records to a Pulsar topic. Use the connector catalog to discover built-in source types, or deploy a source from an uploaded NAR package.
This resource is a StreamNative Cloud capability served under /apis/cloud.sn.io/v1. A
self-hosted engine does not advertise the cloud.sn.io extension group. The ork CLI and
TypeScript SDK check GET /apis and report that the capability is unavailable before sending the
resource request.
Get your registry endpoint
Registry endpoint
Examples on this page target your registry endpoint - the deployment host root, with no path
suffix. For CLI, set ORCA_REGISTRY_URL and exactly one of ORCA_ACCESS_TOKEN (Bearer) or
ORCA_API_KEY (x-api-key). For TypeScript SDK, set ORCA_BASE_URL / ORCA_API_KEY (Bearer).
To find the endpoint, see Connect to the registry.
Source configuration fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Source name. The route also carries this name. |
tenant, namespace | string | No | Pulsar tenant and namespace. The CLI defaults to public/default. |
archive | string | One package source | builtin://<type>, an uploaded source:// package, or another package URL. |
className | string | For custom packages | Source implementation class. |
topicName | string | Yes | Destination Pulsar topic. |
connection | string | Required by the CLI on create | Workspace connection. Immutable after create. |
configs | object | Connector-specific | Fields described by the source catalog. |
schemaType, serdeClassName | string | No | Output schema or SerDe. |
parallelism | integer | No | Source instances. Defaults to 1 in the CLI. |
processingGuarantees | enum | No | Delivery guarantee. |
resources | object | No | CPU, RAM, and disk per instance. |
secrets | object | No | Secret mappings consumed by the connector. |
snServiceAccount | string | No | StreamNative Cloud service account used by the source. |
Discover source types
ork sources available-sources -o json
ork sources config-definition data-generator -o jsonCreate a source
ork sources create \
--name generated-events \
--source-type data-generator \
--destination-topic-name persistent://public/default/events \
--connection pulsar-main \
--parallelism 1Operate sources
| Operation | CLI | TypeScript | REST |
|---|---|---|---|
| List | ork sources list | orca.cloud.connectors.sources.list() | GET /apis/cloud.sn.io/v1/connectors/sources |
| Retrieve config | ork sources get <name> | .retrieve(name) | GET .../sources/{name} |
| Update | ork sources update <name> | .update(name, params) | PUT .../sources/{name} |
| Delete | ork sources delete <name> | .delete(name) | DELETE .../sources/{name} |
| Start/stop/restart | ork sources <action> <name> [instance] | .start, .stop, .restart and instance variants | POST .../{name}:<action> |
| Status | ork sources status <name> [instance] | .retrieveStatus / .retrieveInstanceStatus | GET .../{name}/status |
Create and update are multipart requests. Use --archive or an uploaded
source:// package for a custom NAR. Connection assignment is
immutable during updates.
Permissions
Treat every credential that can call the Workspace's cloud.sn.io routes as full access to its
sources, and separate access with Workspaces. See
Control registry access.