Sources

Create New Source

Changed on

Create a new source connector.

The config object contains connector-specific properties using dot notation (e.g., table.include.list, schema.include.list, database.hostname).

Use the GET /sources/connectors endpoint with a connector_code query parameter to retrieve the full configuration schema for a specific connector type.

For an API source (a catalog entry with api_source: true), read config from GET /sources/connectors/{code}/schema instead: its json_schema names the fields and auth modes. 403 when the connector is not available on this deployment, with its unavailable_reason as the detail.

post/sources

Request

Query parameters

secret_returnedboolean

Whether to include secret values in the response

waitboolean

When False (default), save the configuration and return immediately; the connector is deployed to Kafka Connect asynchronously and its desired_state stays Pending until then. When True, wait for the deployment.

Request body

namestring required

Display name for the source connector.

connectorstring required

Connector type identifier (e.g., 'postgresql', 'mysql', 'mongodb', 'dynamodb', 'sqlserveraws').

configobject required

Connector-specific configuration. A CDC connector takes dot-notation properties (e.g., 'table.include.list', 'schema.include.list'), listed by GET /sources/connectors with a connector_code query parameter. An API source takes the fields of GET /sources/connectors/{code}/schema (e.g., 'auth_mode', 'resources'), plus 'oauth_grant_id' after Connect.

created_from'terraform' | 'web' | 'api'

Origin of an entity in the system.

Tracks how entities (sources, destinations, pipelines) were created, enabling audit trails and origin-specific behavior.

desired_state'Pending' | 'Active' | 'Paused' | 'Stopped' | 'Pending Update' | 'Pending Delete' | 'Pending Stop' | 'Pending Pause' | 'Pending Resume' | 'Pending Restart'

Desired state for sources and destinations.

Represents the target state for the connector:

  • Pending: Configuration saved, not yet deployed
  • Active: Connector should be running (default for existing connectors)
  • Paused: Connector should be paused
  • Stopped: Connector should be stopped
  • Pending Update: Configuration change saved, not yet applied to the running connector
  • Pending Delete: Marked for deletion, connector not yet removed
  • Pending Stop / Pending Pause / Pending Resume / Pending Restart: action requested, not yet applied. Once applied the state becomes Stopped / Paused / Active / Active respectively.
kc_cluster_idstring nullable

Kafka Connect cluster to deploy this connector to. Omit for the default cluster.

tagsstring[] nullable

List of tag IDs to assign to this source

Response

Successful Response

namestring nullable

User-defined connector name

connectorstring nullable

Connector type (e.g., 'postgresql', 'mysql', 'mongodb')

idstring nullable

Unique identifier

connector_display_namestring nullable

Human-readable connector type name

sub_idstring nullable

Subscription identifier

tenant_idstring nullable

Tenant identifier for multi-tenancy

service_idstring nullable

Associated service identifier

configobject nullable

Connector configuration parameters

topic_mapobject nullable

Mapping of topics to their partitions or related entities

tasksinteger[] nullable

List of task identifiers

connector_statusstring nullable

Current status: Active, Paused, Stopped, Broken, Starting, Unassigned, Unknown, Throttled (an api source waiting out its vendor's rate budget; task_statuses carries suspend_reason and resume_at), or a Pending* state echoed from desired_state while a requested change is being applied

desired_statestring nullable

Desired state: Active, Paused, Stopped, or a pending change Streamkap is still applying — Pending, Pending Update, Pending Delete, Pending Stop, Pending Pause, Pending Resume, Pending Restart

reconcile_errorstring nullable

Why the connector is Broken, as recorded when Streamkap last tried to apply its state. Secrets are masked; absent while the connector is healthy.

connection_warningstring nullable

API sources, on the create and update responses only: what the credential and resource checks found that did not stop the save but needs action, e.g. an ad account that is not active, an access token that expires within 14 days, or a resource that returned no rows (each resource's warning prefixed with its name, <resource>: <warning>). The same texts Test connection returns as its message and as each passing resource's warning. Absent when there is nothing to report.

kc_cluster_idstring nullable

Kafka Connect cluster this connector is deployed to. None means the default cluster.

task_statusesobject nullable

Status information for each connector task

tagsstring[] nullable

List of tag IDs assigned to this source

Changes

    • breaking

      for the query request parameter wait, default value was changed from true to false

    • info

      added the new Pending Pause enum value to the request property /

    • info

      added the new Pending Restart enum value to the request property /

    • info

      added the new Pending Resume enum value to the request property /

    • info

      added the new Pending Stop enum value to the request property /

    • info

      added the non-success response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the success response with the status